π¬ΠΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ == ΠΈ != Π΄Π»Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π² Go?
πΠΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ Ρ ΠΎΠΏΠ΅ΡΠ°Π½Π΄Π°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠ°Π²Π½ΠΈΠΌΡ:
β’ ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅: ΡΠ°Π²Π½Ρ Π»ΠΈ Π΄Π²Π° Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ.
β’ Π§ΠΈΡΠ»ΠΎΠ²ΡΠ΅ (int, float, complex): ΡΠ°Π²Π½Ρ Π»ΠΈ Π΄Π²Π° ΡΠΈΡΠ»ΠΎΠ²ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ.
β’ Π‘ΡΡΠΎΠΊΠΈ: ΡΠ°Π²Π½Ρ Π»ΠΈ Π΄Π²Π΅ ΡΡΡΠΎΠΊΠΈ.
β’ ΠΠ°Π½Π°Π»Ρ: ΡΠΎΠ·Π΄Π°Π½Ρ Π»ΠΈ Π΄Π²Π° ΠΊΠ°Π½Π°Π»Π° ΠΎΠ΄Π½ΠΈΠΌ Π²ΡΠ·ΠΎΠ²ΠΎΠΌ make ΠΈΠ»ΠΈ ΠΎΠ±Π° ΡΠ°Π²Π½Ρ nil.
β’ ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ: ΠΈΠΌΠ΅ΡΡ Π»ΠΈ Π΄Π²Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½ΡΠ΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠΈΠΏΡ ΠΈ ΡΠ°Π²Π½ΡΠ΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΎΠ±Π° ΡΠ°Π²Π½Ρ nil.
β’ Π£ΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ: ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π»ΠΈ Π΄Π²Π° ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΠΎΠ΄Π½ΠΎ ΠΈ ΡΠΎ ΠΆΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² ΠΏΠ°ΠΌΡΡΠΈ ΠΈΠ»ΠΈ ΠΎΠ±Π° ΡΠ°Π²Π½Ρ nil.
β’ Π‘ΡΡΡΠΊΡΡΡΡ ΠΈ ΠΌΠ°ΡΡΠΈΠ²Ρ: ΡΠΎΡΡΠΎΡΡ Π»ΠΈ ΠΎΠ½ΠΈ ΠΈΠ· Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΡ ΡΠΈΠΏΠΎΠ².
πΠ’Π°ΠΊΠΆΠ΅ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ <=,
πΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² Go ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ
πΠΠ°ΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡΡ, ΡΡΠΎ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ Π΅ΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ
πΠΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ Ρ ΠΎΠΏΠ΅ΡΠ°Π½Π΄Π°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠ°Π²Π½ΠΈΠΌΡ:
β’ ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅: ΡΠ°Π²Π½Ρ Π»ΠΈ Π΄Π²Π° Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ.
β’ Π§ΠΈΡΠ»ΠΎΠ²ΡΠ΅ (int, float, complex): ΡΠ°Π²Π½Ρ Π»ΠΈ Π΄Π²Π° ΡΠΈΡΠ»ΠΎΠ²ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ.
β’ Π‘ΡΡΠΎΠΊΠΈ: ΡΠ°Π²Π½Ρ Π»ΠΈ Π΄Π²Π΅ ΡΡΡΠΎΠΊΠΈ.
β’ ΠΠ°Π½Π°Π»Ρ: ΡΠΎΠ·Π΄Π°Π½Ρ Π»ΠΈ Π΄Π²Π° ΠΊΠ°Π½Π°Π»Π° ΠΎΠ΄Π½ΠΈΠΌ Π²ΡΠ·ΠΎΠ²ΠΎΠΌ make ΠΈΠ»ΠΈ ΠΎΠ±Π° ΡΠ°Π²Π½Ρ nil.
β’ ΠΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ: ΠΈΠΌΠ΅ΡΡ Π»ΠΈ Π΄Π²Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½ΡΠ΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠΈΠΏΡ ΠΈ ΡΠ°Π²Π½ΡΠ΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΎΠ±Π° ΡΠ°Π²Π½Ρ nil.
β’ Π£ΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ: ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π»ΠΈ Π΄Π²Π° ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΠΎΠ΄Π½ΠΎ ΠΈ ΡΠΎ ΠΆΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² ΠΏΠ°ΠΌΡΡΠΈ ΠΈΠ»ΠΈ ΠΎΠ±Π° ΡΠ°Π²Π½Ρ nil.
β’ Π‘ΡΡΡΠΊΡΡΡΡ ΠΈ ΠΌΠ°ΡΡΠΈΠ²Ρ: ΡΠΎΡΡΠΎΡΡ Π»ΠΈ ΠΎΠ½ΠΈ ΠΈΠ· Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΡ ΡΠΈΠΏΠΎΠ².
πΠ’Π°ΠΊΠΆΠ΅ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ <=,
>=
, <
ΠΈ >
Ρ ΡΠΈΡΠ»ΠΎΠ²ΡΠΌΠΈ ΡΠΈΠΏΠ°ΠΌΠΈ Π΄Π»Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΈ ΡΠΎ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ Π΄Π»Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΠΈΡ
Π»Π΅ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ°. ΠΡΠ»ΠΈ ΠΎΠΏΠ΅ΡΠ°Π½Π΄Ρ Π½Π΅ΡΡΠ°Π²Π½ΠΈΠΌΡ, ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄ΡΡΠ³ΠΈΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΡΠ΅ΡΠ»Π΅ΠΊΡΠΈΡ. πΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² Go ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ
reflect.DeepEqual
. ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ, ΡΠ°Π²Π½Ρ Π»ΠΈ Π΄Π²Π° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°, ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎ ΠΎΠ±Ρ
ΠΎΠ΄Ρ Π΄Π²Π° Π·Π½Π°ΡΠ΅Π½ΠΈΡ. ΠΠ»Π΅ΠΌΠ΅Π½ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½Π° ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ, ΡΡΠΎ Π±Π°Π·ΠΎΠ²ΡΠ΅ ΡΠΈΠΏΡ, ΠΌΠ°ΡΡΠΈΠ²Ρ, ΡΡΡΡΠΊΡΡΡΡ, ΡΡΠ΅Π·Ρ, ΠΌΠ°ΠΏΡ, ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ, ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΠ΄Π½Π°ΠΊΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΠΊ β ΡΡΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ.πΠΠ°ΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡΡ, ΡΡΠΎ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ Π΅ΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ
bytes.Compare
, slices.Compare
ΠΈ Π΄ΡΡΠ³ΠΈΠ΅.