Sobes.tech
Junior — Middle

Чӣ гуна дар забони барномасозӣ рӯйхати холӣ ё сифрро эҷод кардан мумкин аст?

sobes.tech AI

Ҷавоб аз AI

Дар забони Go, якхелаи холӣ ё сифрӣ метавонад ба чанд роҳ сохта шавад:

  1. Ҳангоми эълон кардани як слайс бе оғоз кардан — он nil хоҳад буд:
var s []int // s == nil, len(s) == 0, cap(s) == 0
  1. Бо истифода аз ададии литралӣ як слайс холӣ сохтани:
s := []int{} // на nil, балки слайси холӣ бо дарозии 0
  1. Бо истифода аз функсияи make бо дарозии 0:
s := make([]int, 0) // слайси холӣ, на nil

Фарқ байни слайси nil ва слайси холӣ дар он аст, ки nil ба ёдгории тақсимнашударо ишора намекунад, дар ҳоле ки слайси холӣ дарозии 0 дорад, вале сохтораш тақсим шудааст.

Одатан, барои санҷидани холӣ будани слайс, кофист, ки len(s) == 0 -ро санҷед.