Golang----语法

变量声明

//全局变量
var nameTest1 string
var nameTest2 int
var nameTest3 bool
//批量声明,常用
var (
	name2 string
	age   int
	ok    bool
)
func test(){
	//局部变量,局部变量声明必须使用!
	var nameTest4="hello"//类型推导
	nameTest5 := "world"//简短声明,常用
}

数组定义

数组的长度是数组类型的一部分,确定即不可更改

	var array1 [3]bool
	array2 := [...]bool{0,1,2,3}//根据初始化自动推断数组长度
	array3 := [5]bool{0:1,4:3}//根据索引初始化

多维数组

	var array1 [3][4]bool
	array1 = [3][4]bool{
		[4]bool{true, false, true},
		[4]bool{true, false, true},
		[4]bool{true, false, true},
	}

iota常量计数器

iota 在const关键字出现时将被重置为0。const中每新增一行常声明,将使iota计数一次(iota可理解为const语句块中的行索引),使用iota能简化定义,在定义枚举时很有用。

package main

import "fmt"

const (
	_  = iota
	kb = 1 << (10 * iota)
	mb = 1 << (10 * iota)
	gb = 1 << (10 * iota)
	tb = 1 << (10 * iota)
	pb = 1 << (10 * iota)
)

func main() {
	fmt.Printf("hello Jc!\n")
	fmt.Printf("kb is %v\n", kb)
	fmt.Printf("mb is %d\n", mb)
	fmt.Printf("gb is %d\n", gb)
	fmt.Printf("tb is %d\n", tb)
	fmt.Printf("pb is %d\n", pb)
}

打印格式

Golang----语法

字符串

``用于多行文字保持格式输出,可以用于路径原样输出

	string1 := `
多行文字
		测试	
	`
	string2 := `D:\Example Code\Go Demo\src\gitee.com\jcgogo`
	
	fmt.Println(string1)
	fmt.Println(len(string2))//打印字符串长度

字符串拼接

将两段字符串拼接

	string3 := fmt.Sprintf("%s,%s", string1, string2)

字符串分割

将字符串按\分割为列表

	result := strings.Split(string3, "\\")
	fmt.Println(result)

字符串包含内容判断

判断字符串中是否包含测试

	result2 := strings.Contains(string3, "测试")
	fmt.Println(result2)

前后缀判断

判断字符串前缀是否为D,后缀是否为o

	fmt.Println(strings.HasPrefix(string2, "D"))
	fmt.Println(strings.HasSuffix(string2, "o"))

字符串子串位置

字符c的第一个位置和最后一个位置

	fmt.Println(strings.Index(string2,"c"))
	fmt.Println(strings.LastIndex(string2,"c"))

字符串拼接

将分割好字符串的列表的以~~拼接

	fmt.Println(strings.Join(result1, "~~"))

for遍历对象

	for _, v := range string2 {
		fmt.Printf("%c ", v)
	}

切片(slice)

上一篇:js实现金额转换为大写


下一篇:求解 代码问题在哪里(python)