golang 运行这个:https://play.golang.org/p/BWDlpVkoru

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了golang 运行这个:https://play.golang.org/p/BWDlpVkoru相关的知识,希望对你有一定的参考价值。

package main

import (
	"fmt"
)

type Gettable interface {
  Name() string
}

type gettable struct {
  name string
}
func (g *gettable) Name() string {
  return g.name
}

func (g *gettable) SetName(name string) {
  g.name = name
}

func main(){
  g := &gettable{"some name"}
  fmt.Println("original:", g.Name())
  
  // interfaces don't really have to exist anywhere except on a var
  var settable interface{
    SetName(string)
  }
  settable = g
  settable.SetName("a new name")
  fmt.Println("new:", g.Name())

  // you can define types inside method bodies
  type setter interface {
    SetName(string)
  }
  var s setter = g
  s.SetName("yet another name")
  fmt.Println("new 2:", g.Name())
}

golang 当你超过一个字符串https://play.golang.org/p/T_O4fOHcBmW时会发生什么

import (
    "fmt"
)

func main() {
    for i, t := range []byte("我我"){
        fmt.Printf("%d, %x\n",i,t)
    }
    for i, t := range string("我我"){
        fmt.Printf("%d, %x\n",i,t)
    }
    for i, t := range []rune("我我"){
        fmt.Printf("%d, %x\n",i,t)
    }
}

/* Output:
0, e6
1, 88
2, 91
3, e6
4, 88
5, 91
0, 6211
3, 6211
0, 6211
1, 6211

Program exited. */

以上是关于golang 运行这个:https://play.golang.org/p/BWDlpVkoru的主要内容,如果未能解决你的问题,请参考以下文章

golang 运行这个:https://play.golang.org/p/BWDlpVkoru

golang 当你超过一个字符串https://play.golang.org/p/T_O4fOHcBmW时会发生什么

在线代码编译运行工具

Golang频道发行

如何漂亮地打印 Golang 结构? [复制]

请说明golang类型是不是按值传递