GoLand(三)数据类型、变量和常量

Infi-chu:

http://www.cnblogs.com/Infi-chu/

一、数据类型
数据类型的出现是为了把数据分成所需内存大小不同的数据,编程的时候需要用大数据的时候才需要申请大内存,就可以充分利用内存。Go语言按类别有以下几种数据类型:
1.布尔型
两个常量,true和false。
eg.

var a bool = true

2.数字类型
整型int,浮点型float32、float64

3.字符串类型
Go语言的字符串的字节使用UTF-8编码标识Unicode文本。

4.派生类型
指针类型、数组类型、结构化类型、Channel类型、函数类型、切片类型、接口类型、Map类型

二、数字类型
(基于架构的类型)
1.uint8
无符号8位整型[0,255]
2.uint16
无符号16位整型[0,65535]
3.uint32
无符号32位整型[0,4294967295]
4.uint64
无符号64位整型[0,18446744073709551615]
5.int8
有符号8位整型[-128,127]
6.int16
有符号16位整型[-32768,32767]
7.int32
有符号32位整型[-2147483648,2147483647]
8.int64
有符号64位整型[-9223372036854775808,9223372036854775807]

(浮点类型)
1.float32
IEEE-754 32位浮点型数
2.float64
IEEE-754 64位浮点型数
3.complex64
32 位实数和虚数
4.complex128
64 位实数和虚数

(其他数字类型)
1.byte
类似 uint8
2.rune
类似 int32
3.uint
32 或 64 位
4.int
与 uint 一样大小
5.uintptr
无符号整型,用于存放一个指针

三、变量
1.变量声明
第一种,先声明,不赋值

var a string

2.根据值自动判断变量类型

var b = 1

3.省略var,:=左侧的变量先前不能被声明过

c := 2

4.多变量声明

//类型相同多个变量, 非全局变量
var a1, a2, a3 int
a1, a2, a3 = 1, 2, 3
var b1, b2, b3 = 1, 2, 3 //和python很像,不需要显示声明类型,自动推断
c1, c2, c3 := 1, 2, 3 //出现在:=左侧的变量先前不能被声明过

// 这种因式分解关键字的写法一般用于声明全局变量
var (
    d1 int
    d2 string
)

四、常量
常量是一个简单值的标识符,在程序运行时,不会被修改的量。常量中的数据类型只可以是布尔型、数字型(整数型、浮点型和复数)和字符串型。
1.格式:

// 单常量声明
// const 标识符 [类型] = value    // 类型为可选项
// 多常量声明
// const a,b = 1,2

package main

import "fmt"

func main() {
   const LENGTH int = 10
   const WIDTH int = 5
   var area int
   const a, b, c = 1, false, "str" //多重赋值

   area = LENGTH * WIDTH
   fmt.Printf("面积为 : %d", area)
   println()
   println(a, b, c)
}

2.iota
iota,特殊常量,可以认为是一个可以被编译器修改的常量。iota 在 const关键字出现时将被重置为 0(const 内部的第一行之前),const 中每新增一行常量声明将使 iota 计数一次(iota 可理解为 const 语句块中的行索引)。

eg1

package main

import "fmt"

func main() {
    const (
            a = iota   //0
            b          //1
            c          //2
            d = "ha"   //独立值,iota += 1
            e          //"ha"   iota += 1
            f = 100    //iota +=1
            g          //100  iota +=1
            h = iota   //7,恢复计数
            i          //8
    )
    fmt.Println(a,b,c,d,e,f,g,h,i)
}

eg2

package main

import "fmt"
const (
    i=1<<iota
    j=3<<iota
    k
    l
)

func main() {
    fmt.Println("i=",i)
    fmt.Println("j=",j)
    fmt.Println("k=",k)
    fmt.Println("l=",l)
}

// i=1:左移 0 位,不变仍为 1;
// j=3:左移 1 位,变为二进制 110, 即 6;
// k=3:左移 2 位,变为二进制 1100, 即 12;
// l=3:左移 3 位,变为二进制 11000,即 24。

原文地址:https://www.cnblogs.com/Infi-chu/p/10149468.html

时间: 2024-08-01 05:22:40

GoLand(三)数据类型、变量和常量的相关文章

C# 《三》变量、常量与数据类型(1)

变量操作 在计算机中存储数据和儿童在抽屉中存放物品很类似. 1.计算机存储变量的过程: 1)声明变量: 2)给变量赋值: 3)使用变量. 声量的声明.赋值 1.要在计算机中存一个数字 50,需要两句话. int a; //将要放的物品告诉家长(声明变量) a = 50; //将物品放到某个抽屉中 (赋值) 2.声明变量的语法格式: 1)数据类型   变量名: 3.赋值:  变量名  = 值: 4.可以  a = 3.14 :吗??? 5.数据有整数(int).小数(double).字符串(str

JAVA数据类型,变量,转换,常量,运算符

java数据类型: Java基本类型共有八种,基本类型可以分为三类: 1.字符类型char,用单引号赋值 2.布尔类型boolean 3.数值类型byte.short.int.long.float.double.数值类型又可以分为整数类型byte.short.int.long和浮点数类型float(直接赋值时必须在数字后加上f或F).double(赋值时可以加d或D也可以不加). java变量: 数据类型 变量名[=值][,变量名[=值]];int a;int b = 1;int c,d;int

C语言基础学习基本数据类型-变量和常量

变量和常量 什么是变量和常量?有些数据在程序运行前就预先设定,并在运行过程中不发生变化,称之为常量:有些数据在程序运行中可能发生变化或被赋值,称之为变量. 使用变量前必须先声明一个变量.变量定义的语法是:数据类型名 变量名 ; 比如我们可以这样定义一个整型变量: int a;  //int类型表示整型 若要声明多个变量,可以逐个声明,也可以在数据类型名后面加上多个变量名,中间用逗号分隔: 数据类型名 变量名1, 变量名2, 变量名3; 创建变量的同时可以为其赋值,也就是初始化变量.语法为: 数据

C# 《三》变量、常量与数据类型(2)

1.数据类型之值类型 1.数据类型是表示具有多种相同特征的一组数据: 2.C# 预定义的数据类型包括两种值类型,引用类型: 3.值类型是在栈中操作,而引用类型则在堆中分配存储单元. 4.字面上理解就是直接保存其值,如 int (整型) 就属于值类型,如声明了一个整列变量,并给它赋予另一个整型变量的值,则在内存事先复制一个整型变量的值,然后将其赋予刚声明的整型变量,这时内存中就会有两个整型值. 5.引用类型的变量在内存中是直接保存其值的引用.C#语言中大多数复杂数据类型都是引用类型,例如类就是引用

三.Python变量,常量,注释

1. 运行python代码. 在d盘下创建一个t1.py文件内容是: print('hello world') 打开windows命令行输入cmd,确定后 写入代码python d:t1.py 您已经运行了第一个python程序, 即:终端---->cmd-----> python  文件路径. 回车搞定~ 2. 解释器. 上一步中执行 python d:t1.py 时,明确的指出 t1.py 脚本由 python 解释器来执行. 如果想要类似于执行shell脚本一样执行python脚本,例:

JAVA程序,基本数据类型、、数据类型转换、变量和常量、常用运算符

一.基本数据类型 整数类型:byte.short. int(常用).long(较常用)     定义某个变量          int  a=10: 浮点类型(小数):float.double(常用) 字符类型:char  字符(不是字符串)     char  b='a' 转义字符类:  常用的\\反斜杠字符    \t垂直制表符     \r 回车        \n换行 布尔类型(逻辑类型):  true .false 二.类型转换 强制转换与自动转换 int  m=1  : long n

编程语言类别;运行Python程序的方式;变量和常量;Python程序的垃圾回收机制;

---恢复内容开始--- 一.编程语言分类: 1.机器语言:直接用二进制的0和1和计算机(CPU)直接沟通交流,直接操作硬件. 优点:不需转换,计算机能直接读懂,执行速度快. 缺点:二进制代码复杂多样,理解甚难,开发效率低. ps:站在奴隶的角度说奴隶能够听得懂的话 0000 代表  加载 (LOAD) 0001代表 存储(STORE) 暂存器部分事例 0000  代表暂存器 A 0001  代表暂存器  B 存储器部分事例 000000000000  代表地址为 0的存储器 000000000

JAVA学习(三):Java基础语法(变量、常量、数据类型、运算符与数据类型转换)

Java基础语法(变量.常量.数据类型.运算符与数据类型转换) 1.变量 Java中,用户可以通过指定数据类型和标识符来声明变量,其基本语法为: DataType identifier; 或 DataType identifier = value; 其中,DataType是变量类型,如int/string/char/double/boolean等:identifier是变量名称,即标识符:value就是声明变量的值. 注: a.标识符由数字0-9.大小写字母.下划线.美元符号.人民币符号以及所有

java学习笔记----数据类型,变量,常量

一.数据类型 1.基本类型(8种,又称内置数据类型).6种数字类型(byte,short,int,long,float,double),一种字符型(char),一种布尔类型(boolean). byte: byte数据类型是8位.有符号的,以二进制补码表示的整数:占1个字节: 最小值是-128(-2^7): 最大值是127(2^7-1): 默认值是0: byte类型用在大型数组中节约空间,主要代替整数,因为byte变量占用的空间只有int类型的四分之一: 例子:byte a = 100,byte