数据类型分类

一、数据类型-基本数据类型

  1、整数型(int、有符号(int8/1字节、int16/2字节、int32/4字节、int64/8字节)、无符号(uint、uint8、uint16、uint32、uint64))

    int--根据系统位数自动定义,系统是32位,则为int32,系统是64位,则位int64

    uint--根据系统位数自动定义,系统是32位,则为uint32,系统是64位,则位uint64

  2、浮点型:由符号位+指数位+位数位组成,分为float32,float64

    尾数位可能会丢失,造成精度损失,不受操作系统的影响,声明默认为64位

    有两种显示方式:科学计数:534e3等价于534*10的3次方,534e-3等价于534/10的3次方,e不区分大小写;小数时前面0可不写

  3、布尔型:只能是true,false,占用一个字节

  4、字符串

    字符:单引号括起来的单个字符,需要格式化输出,%c,否则输出字符码数,

       utf-8英文1个字节,中文3个字节

       存储:字符-对应码数-二进制-存储

          读取:二进制-对应码数-字符-读取

    字符串不可修改,双引号里有转义字符会被识别,反引号里不会识别里面的转移字符

  5、格式化输出符号

    %c:该值对应的unicode码值

    %d:表示为十进制显示

    %T:值的类型

    %q:该值对应的双引号括起来的go语法字符串字面值

    %f:显示小数

二、数据类型-派生数据类型

  指针、数组、结构体、管道、函数、切片、接口、map

数据类型转换

一、int/float/bool/字符--转换成str,用fmt.sprintf进行转换,%q展示双引号括起来的字符串面值

var(
num4 = 1
num5 = 3.44
char = 'w'
bl = true
str1 string
)
  //int-->>string
str1 =fmt.Sprintf("%d",num4)
fmt.Printf("str=%q",str1)
// float-->>string
str1 = fmt.Sprintf("%f",num5)
fmt.Printf("str=%q",str1)   //str-->>sting
str1 = fmt.Sprintf("%c",char)
fmt.Printf("str=%q",str)  //bool-->>string
str1 = fmt.Sprintf("%t",bl)
fmt.Printf("str=%q",str1)

二、str转int/float/bool,用strconv包的函数进行转换

  注意事项:

  1、使用strconv包的函数,先导入strconv包,会返回两个值,第一个是value,第二个是error,一个是报错,报错不需要用_忽略掉,%v-按原类型输出

  2、string类型转基本数据类型能够转成有效数据

  3、如将hello转成int,不会报错,直接显示默认值0

  4、如将hello转成bool,不会报错,直接显示默认值false

  5、ParseBool(变量名),(值,报错)

  6、ParseInt(变量名,显示进制(10进制),多少位(int8/16/32/64)),(值-int64,报错)

  7、ParseFloat(变量名,位数flaot32/64),(值float64,报错)


var(
str2 = "true"
b1 bool
str3 = "122333"
n1 int64
str4 = "23.33"
n2 float64
)
//string转bool,%v是展示值的默认格式
b1,_ = strconv.ParseBool(str2)
fmt.Printf("b=%v",b1) //string转int
n1,_ = strconv.ParseInt(str3,10,64)
fmt.Printf("n1=%v",n1) //string转float
n2,_ = strconv.ParseFloat(str4,64)
fmt.Printf("n2=%v",n2)
}

 


												

go语言-数据类型及类型之间转换的更多相关文章

  1. javascript数据类型及类型的转换总结

    javascript 是浏览器客户端脚本语言,要想让网页与后台程序更好的交互效果,这里我们详细了解javascript 数据类型及类型的转换 1,数据类型 number number类型 数字类型,浮 ...

  2. javaScript 基本类型之间转换

    在Java中,基本类型之间的强制转换也不是这样的,比如,整数要转换成字符串,必须使用Integer.toString()静态方法或者String.valueOf()静态方法,把字符串转换为整数,必须使 ...

  3. java数据类型和类型得转换

    java数据类型 强类型语言 ​ Java是一种强类型得语言,严格要求变量要符合规定,所有变量都必须先定义再使用 java得数据类型分为两大类 值得注意得是String并不是一个数据类型,它是一个类 ...

  4. opencv中Mat与IplImage,CVMat类型之间转换

    opencv中对图像的处理是最基本的操作,一般的图像类型为IplImage类型,但是当我们对图像进行处理的时候,多数都是对像素矩阵进行处理,所以这三个类型之间的转换会对我们的工作带来便利. Mat类型 ...

  5. Java数值类型之间转换

    Java之间的数值转换如图所示,实心箭头代表无数据丢失,虚线箭头代表可能丢失 例如:123456789是一个大的整数,包含的位数比float类型能够表达的位数多,但这个数转换为float类型时,将会得 ...

  6. JAVA-各种类型之间转换 parse() 与valueOf()

    类型互转 1.各种类型转String 2.String转Bytes 3.数组转List 4.进制转换 5. parse 在 SimpleDateFormat 中是转换为Date类,其它的一些包装类都是 ...

  7. Java中int和String类型之间转换

    int –> String int i=123; String s=""; 第一种方法:s=i+""; //会产生两个String对象 第二种方法:s=S ...

  8. go byte 和 string 类型之间转换

    string 不能直接和byte数组转换 string可以和byte的切片转换 1,string 转为[]byte var str string = "test" var data ...

  9. [ios][swift]Swift类型之间转换

    http://www.ruanman.net/swift/learn/4741.html

随机推荐

  1. 《ucore lab3》实验报告

    资源 ucore在线实验指导书 我的ucore实验代码 练习1:给未被映射的地址映射上物理页 题目 完成do_pgfault(mm/vmm.c)函数,给未被映射的地址映射上物理页.设置访问权限的时候需 ...

  2. Spring @Transactional 事务机制

    几个概念要清楚:事务的传播机制,事务的边界 工作原理 运行配置@Transactional注解的测试类的时候,具体会发生如下步骤 1)事务开始时,通过AOP机制,生成一个代理connection对象, ...

  3. Java中XML的四种解析方式(一)

    XML是一种通用的数据交换格式,它的平台无关性.语言无关性.系统无关性给数据集成与交互带来了极大的方便.XML在不同的语言环境中解析的方式都是一样的,只不过实现的语法不同而已. XML文档以层级标签的 ...

  4. PAT(B) 1068 万绿丛中一点红(C)

    题目链接:1068 万绿丛中一点红 (20 point(s)) 参考博客:1068. 万绿丛中一点红(20) i逆天耗子丶 题目描述 对于计算机而言,颜色不过是像素点对应的一个 24 位的数值.现给定 ...

  5. 【springcloud】1.微服务之springcloud-》eureka源码分析之请叫我灵魂画师。。。

  6. 编译 Linux 内核 时出现 Restart config 问题

    scripts/kconfig/conf --silentoldconfig Kconfig * * Restart config... * * * Enable the block layer * ...

  7. PEB TEB结构体使用

    PEB TEB结构体使用一个可执行文件被OS加载到内存,并处理完成相关的模块加载,导入表处理……及其他必须处理后,形成一个进程.在OS内核中保存有一份关于这个进程的身份证信息,就是平常看到的HANDL ...

  8. 【转载】Sqlserver使用Group By进行分组并计算每个组的数量

    在SQL语句查询中,Group By语句时常用来进行分组操作,有时候在分组的同时还需要计算出每个组的数量多少.在Sqlserver数据库中可以使用Group By加Count聚合函数来实现此功能,即通 ...

  9. Java 之 字节输入流 [InputStream]

    一.字节输入流 java.io.InputStream 抽象类是表示字节输入流的所有类的超类,可以读取字节信息到内存中. 它定义了字节输入流的基本共性功能方法. 共性方法: public void c ...

  10. iOS10推送必看UNNotificationAttachment以及UNTimeIntervalNotificationTrigger

    虽然这篇文章比较长,也不好理解,但是还是建议大家收藏,以后用到的时候,可以看看,有耐心的还是读一读. 这篇文章开始,我会跟大家好好讲讲,苹果新发布的iOS10的所有通知类. 一.创建本地通知事例详解: ...