舉例理解:
var array = [...] int {1, 2, 3, 4, 5, 6, 7}
slice1 = array[2:5:6] //那么slice1 = []int{3, 4, 5} , len(slice1) 等于3,cap(slice1) 等于5
var array = [...] int {1, 2, 3, 4, 5, 6, 7}
slice1 = array[2:5:6] //那么slice1 = []int{3, 4, 5} , len(slice1) 等于3,cap(slice1) 等于5
2018-01-31
result:=0
for i:=0;i<len(numbers2);i++{
result=result+numbers2[i]
}
sum := result
for i:=0;i<len(numbers2);i++{
result=result+numbers2[i]
}
sum := result
2018-01-31
最贊回答 / 慕瓜3564473
我從java的思路轉(zhuǎn)變過來和多態(tài)有點像。指針類型可能就是子類,而基底類型好比父類,你實現(xiàn)一個子類的時候就實現(xiàn)了所有父類的內(nèi)容,而你實現(xiàn)一個父類的情況下子類的功能并沒有被實現(xiàn)。
2018-01-25
type Cat struct{
Name string
Age uint8
Location string
}
func (cat *Cat) Grow(){
cat.Age --
}
func (cat *Cat) Move(new string)string{
return new;
}
Name string
Age uint8
Location string
}
func (cat *Cat) Grow(){
cat.Age --
}
func (cat *Cat) Move(new string)string{
return new;
}
2018-01-11
其實只要在panic或其調(diào)用棧之前加上 defer ... recover語句就可以了,比如這樣
func innerFunc() {
fmt.Println("Enter innerFunc")
defer func() {
if p := recover(); p != nil {
fmt.Printf("Fatal error: %s\n", p)
}
}()
panic(errors.New("Occur a panic!"))
fmt.Println("Quit innerFunc")
}
func innerFunc() {
fmt.Println("Enter innerFunc")
defer func() {
if p := recover(); p != nil {
fmt.Printf("Fatal error: %s\n", p)
}
}()
panic(errors.New("Occur a panic!"))
fmt.Println("Quit innerFunc")
}
2018-01-09
func main() {
for i := 0; i < 10; i++ {
func(n int) {
fmt.Printf("%d ", fibonacci(i))
}(i)
defer fmt.Printf("%d ", fibonacci(i))
}
}
for i := 0; i < 10; i++ {
func(n int) {
fmt.Printf("%d ", fibonacci(i))
}(i)
defer fmt.Printf("%d ", fibonacci(i))
}
}
2018-01-08