40 lines
950 B
Go
40 lines
950 B
Go
// For more tutorials: https://blog.learngoprogramming.com
|
|
//
|
|
// Copyright © 2018 Inanc Gumus
|
|
// Learn Go Programming Course
|
|
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
|
|
//
|
|
|
|
package main
|
|
|
|
import "fmt"
|
|
|
|
func main() {
|
|
a := [3]int{6, 9, 3}
|
|
b := [3]int{3, 9, 6}
|
|
|
|
if a == b {
|
|
fmt.Println("they're equal!")
|
|
} else {
|
|
fmt.Println("they're not equal! a==b?", a == b)
|
|
|
|
// but, they're comparable
|
|
// since their types are identical
|
|
fmt.Printf("1st array's type is %T\n", a)
|
|
fmt.Printf("2nd array's type is %T\n", b)
|
|
|
|
// go compares arrays like this
|
|
// it compares the elements one by one
|
|
fmt.Println(a[0] == b[0]) // false
|
|
fmt.Println(a[1] == b[1]) // true
|
|
fmt.Println(a[2] == b[2]) // false
|
|
|
|
// actually Go will quit comparing these arrays
|
|
// once it sees unequal items
|
|
//
|
|
// so, it will stop the comparison (short-circuit)
|
|
// when it sees the first item is false
|
|
// and it will return false
|
|
}
|
|
}
|