ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

【字节青训营-后端专场】Go 语言上手 - 基础语言

2022-05-08 23:32:22  阅读:239  来源: 互联网

标签:语言 err int fmt func 青训营 Go input string


变量声明

切片:可变长度数组

c:=make([]string,3)
good:=[]string{"a","b","c","d"}
append(s,"d")    //增补
s[2:5]           //第(2,3,4)个元素

map:

make(map[string]int)            string-int
删除:delete(m,"one")
遍历:无序

range:

nums:=[]int{2,3,4}
for i,num := range nums{
}
m:=map[string]string{"a":"A","b":"B"}
for k,v := range m{
}
for k:=range m{
}

函数:

func add(a int,b int)int{
}
func exists(m map[string]string,k string)(v string,ok bool){
}
指针:
func add2(n int){
    n+=2
}
func add2ptr(n *int){
    *n+=2
}
add2(n)
add2ptr(&n)

结构体:

type user struct{
    name string
    password string
}

a:=user{name:"wang",password:"1024"}//指定名字可以只指定一部分
b:=user{"wang","1024"}
b.name="...."

结构体方法:类似类成员函数

func (u user) checkPassword(password string)bool{
}
func (u *user) checkPassword(password string)bool{
//带指针才能对结构体成员进行修改
}

a:=user{name:"wang",password:"1024"}
a.checkPassword("2048")

错误处理

err error
return v,nil
return nil,errors.New("not found")

fmt.Println(err)

字符串操作

字符串格式化

fmt.Println()
fmt.Printf("%d") %v %+v %#v

JSON操作

时间处理

数字-字符串转换

f,_:=strconv.ParseFloat("1.234",64)
n,_:=strconv.ParseInt("111",10,64)//十进制 64位精度
n,_:=strconv.ParseInt("0x1000",0,64)//自动选择进制
n2,_:=strconv.Atol("123")

进程信息


读取用户输入

reader := bufio.NewReader(os.Stdin)
input, err := reader.ReadString('\n')
if err != nil {
   fmt.Println("An error occured while reading input. Please try again", err)
   return
}
input = strings.TrimSuffix(input, "\n")

guess, err := strconv.Atoi(input)
if err != nil {
   fmt.Println("Invalid input. Please enter an integer value")
   return
}
fmt.Println("You guess is", guess)

标题:「Go 语言上手-基础语言」第三届字节跳动青训营 - 后端专场

网址:https://live.juejin.cn/4354/yc_basic-language

标签:语言,err,int,fmt,func,青训营,Go,input,string
来源: https://www.cnblogs.com/lsgjcya/p/16247530.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有