Go-基本数据-基本类型

  • 1 整数

package main

import "fmt"

func main() {
	/**
	整数
	有符号:int8 int16 int32 int64
	无符号:uint8 uint16 uint32 uint64

	有符号整数
		n位数字取值范围: -2^(n-1) ~ 2^(n-1)-1
		int天然的大小就是32位
	无符号整数
		0 ~ 2^n - 1
		uint8 取值范围: 0~255
	*/
	var u uint8 = 255
	//溢出则为1
	println(u, u+1, u*u) // 255 0 1
	var i int8 = 127
	println(i, i+1, i*i) //127 -128 1

	var x uint8 = 1<<1 | 1<<5 // 2
	println(x)

	//printf 用谓词%b 以二进制形式传输数值,副词08在输出结果钱补零,补够8位
	fmt.Printf("%08b\n", x) //00100010

	medals := []string{"gold", "silver", "bronze"}
	for i := len(medals) - 1; i >= 0; i-- {
		fmt.Println(medals[i])
	}

	 float1 := 3.3333
	 int1 :=int(float1)
	 println(int1) //3 精读会损失
}

  • 2 字符串
package main

import "fmt"

func main() {
	s := "hello,word"

	fmt.Println(s[0])
	println(s[0:3]) // hel
	println(s[1:4]) //ell
	println(s[7:])  //ord  从第七位开始到最后
	println(s[:])   //abc,def


	s1 := "left foot"
	t := s1
	s1 +=", right foot"
	println(s1)
	println(t)


	/**
	\a 警告
	\b 退格符
	\f 换页符
	\n 换行符
	\r 回车符
	\t 制表符
	\v 垂直制表符
	\' 单引号
	\" 双引号
	\\ 反斜杠

	 */
}
  • 3 字符串与slice
package main

import (
	"fmt"
	"strings"
)

func main() {
	/**
	四个重要的标准包
	bytes : 操作字节slice
	strings : 提供了搜索,替换,修正,比较,切分,连接字符串
	strconv : 布尔值,整数,浮点数 与string相互转换
	unicode : 判别文字符号值特性的函数
	*/
	fmt.Println(basename("a/b/c.go"))
	fmt.Println(basename2("a/b/c.go"))
	println("---")
	println(string2byte("abc"))
	println(1<<10)//1024
}
func string2byte(s string) []byte {
	return []byte(s)
}

func basename2(s string) string {
	slash := strings.LastIndex(s, "/")
	s = s[slash+1:]
	if dot := strings.LastIndex(s, "."); dot >= 0 {
		s = s[:dot]
	}
	return s
}

//去除/以前的字符 和.以后的
func basename(s string) string {
	for i := len(s) - 1; i >= 0; i-- {
		if s[i] == '/' {
			s = s[i+1:]
			break
		}
	}
	for i := len(s) - 1; i >= 0; i-- {
		if s[i] == '.' {
			s = s[:i]
			break
		}
	}
	return s
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值