go标识符、变量、常量
标识符
标识符是用来表示Go中的变量名或者函数名,以字母或_开头。后可跟着字母、数字、 _
关键字
关键字是Go语言预先定义好的,有特殊含义的标识符。
变量
1. 语法:var identifier type
举例1:
var a int
var b string
var c bool
var d int =
var e string = “hello”
举例二
var (
a int //0
b string //“”
c bool //false
d int = // 8
e string = “hello” //hello
)
举例 三
package main import (
"fmt"
) func main(){
// 方式一
/*
var a int
var b string
var c bool
var d float32
*/ // 方式二 var(
a int
b string
c bool
d float32
) fmt.Printf("a=%d b=%s c=%t d=%f\n", a, b, c, d) a =
b = "ctz"
c = true
d = 10.36 fmt.Printf("a=%d b=%s c=%t d=%f", a, b, c, d)
}
常量
1. 常量使用const 修饰,代表永远是只读的,不能修改。常量定义时必须给定值
2. 语法:const identifier [type] = value,其中type可以省略。
举例一
const b string = “hello world”
const b = “hello world”
const Pi = 3.1414926
const a =
举例二(比较优雅的写法)
const(
a =
b =
c =
)
举例三(比较专业的写法)
const (
a = iota
b
c
) const(
a = << iota
b
c
)
举例四
package main import "fmt" func main(){
/*
常量 定义时一定要给定值 不给值 报错
常量一旦定义 不可修改
*/ // 方式一
// const a int = 10
// const b = "str" // 方式二
const(
a int =
b = "str"
) fmt.Printf("a=%d b=%s\n", a , b) // 下面这种写法如果后面不给定值 则后面常量的值 和前面的一样
const (
c int =
d
e =
f
) fmt.Printf("c=%d d=%d e=%d f=%d \n", c, d, e, f)
//=200 d=200 e=300 f=300 // iota 开始为0 依次向下递增1
const(
a1 = iota
a2
a3
a4
) fmt.Printf("a1=%d a2=%d a3=%d a4=%d \n", a1, a2, a3, a4)
// a1=0 a2=1 a3=2 a4=3 const(
b1 = iota
b2 = iota
b3 = iota
b4 = iota
)
fmt.Printf("b1=%d b2=%d b3=%d b4=%d \n", b1, b2, b3, b4)
// b1=0 b2=1 b3=2 b4=3 const(
c1 = << iota
c2
c3
c4
)
fmt.Printf("c1=%d c2=%d c3=%d c4=%d \n", c1, c2, c3, c4)
//c1=1 c2=2 c3=4 c4=8
const(
d1 = << iota
d2 = << iota
d3 = << iota
d4 = << iota
)
fmt.Printf("d1=%d d2=%d d3=%d d4=%d \n", d1, d2, d3, d4)
//d1=1 d2=2 d3=4 d4=8
}
常量 练习
package main import "fmt" const (
a = iota
b
c
d
e =
f
g = iota
h
k
) const (
A = iota
B
C
) func main(){
fmt.Printf("a= %d\n", a)
fmt.Printf("b= %d\n", b)
fmt.Printf("c= %d\n", c)
fmt.Printf("d= %d\n", d)
fmt.Printf("e= %d\n", e)
fmt.Printf("f= %d\n", f)
fmt.Printf("g= %d\n", f)
fmt.Printf("h= %d\n", h)
fmt.Printf("k= %d\n", k)
fmt.Printf("A= %d\n", A)
fmt.Printf("B= %d\n", B)
fmt.Printf("C= %d\n", C)
}
/*
a= 0
b= 1
c= 2
d= 3
e= 8
f= 8
g= 8
h= 7
k= 8
A= 0
B= 1
C= 2
*/ /*
const() 中 如果 定义了 常量 不给定默认值 那么 该常量的表达式 和 其上一个 表达式是相同的
iota 在const 中 没经过一层 自增1
*/
go标识符、变量、常量的更多相关文章
- GO中标识符,标识符,变量,常量,iota
参考:https://www.cnblogs.com/nickchen121/p/11517455.html 一.标识符与关键字 1.标识符 在编程语言中标识符就是程序员定义的具有特殊意义的词,比如变 ...
- JAVA之旅(一)——基本常识,JAVA概念,开发工具,关键字/标识符,变量/常量,进制/进制转换,运算符,三元运算
JAVA之旅(一)--基本常识,JAVA概念,开发工具,关键字/标识符,变量/常量,进制/进制转换,运算符,三元运算 Android老鸟重新学一遍JAVA是什么感觉?枯燥啊,乏味啊,而且归纳写博客,都 ...
- Java复习3.变量.常量.String.
Java 中的变量常量数据类型 20131004 前言: 还是国庆节,无聊的很,就没事复习点Java的知识,其实C/C++基本上是现在大型企业面试的语言,但是多学习点Java是没有坏处的,而且,将来工 ...
- javaSE基础之变量,常量,作用域和运算符
变量 变量是什么? 变量是可以变化得量 Java是一种强类型语言,每个变量都必须声明其类型. Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域 type varName [=v ...
- Java变量, 常量和作用域
目录 变量 作用域 局部变量 实例变量 类变量 常量 命名规范 视频课程 变量 变量就是可以变化的量 Java是一种强类型的语言, 每个变量都必须声明其类型 Java变量是程序中最基本的存储单元, 其 ...
- iOS开发Swift篇(01) 变量&常量&元组
iOS开发Swift篇(01) 变量&常量&元组 说明: 1)终于要写一写swift了.其实早在14年就已经写了swift的部分博客,无奈时过境迁,此时早已不同往昔了.另外,对于14年 ...
- C#基础总结之一变量常量-if嵌套语句-witch结构-类型转换
//Console.WriteLine("Hello World"); //打印显示 //Console.ReadLine(); //接收输入的值 //Console.ReadKe ...
- 李洪强iOS开发Swift篇---11_变量&常量&元组
李洪强iOS开发Swift篇---11_变量&常量&元组 说明: 1)终于要写一写swift了.其实早在14年就已经写了swift的部分博客,无奈时过境迁,此时早已不同往昔了.另外,对 ...
- PHP 获得当前页面所有变量常量的值
get_defined_vars() - 返回由所有已定义变量所组成的数组,这个函数在二次开发的时候用起来非常给力: get_defined_constants();可以返回当前的所有常量 zend的 ...
- TF:Tensorflow定义变量+常量,实现输出计数功能—Jason niu
#TF:Tensorflow定义变量+常量,实现输出计数功能 import tensorflow as tf state = tf.Variable(0, name='Parameter_name_c ...
随机推荐
- css实现 显示一行文字,超出用...代替
overflow:hidden; white-space:nowrap; text-overflow:ellipsis;
- 【bzoj2121】字符串游戏 区间dp
题目描述 给你一个字符串L和一个字符串集合S,如果S的某个子串在S集合中,那么可以将其删去,剩余的部分拼到一起成为新的L串.问:最后剩下的串长度的最小值. 输入 输入的第一行包含一个字符串,表示L. ...
- C++ Win系统下的调试
有的时候我们找不出错误在哪里,这时候我们需要调试一遍看看到底是哪里出了问题:我们需要分布查看程序运行情况. 这时候我们用到了调试这样一个神奇的东西. 一.基于Dev cpp环境下的调试 Dev cpp ...
- 【比赛】HNOI2018 毒瘤
虚树+dp 直接看zlttttt的强大题解 zlttttt的题解看这里 #include<bits/stdc++.h> #define ui unsigned int #define ll ...
- https的通信过程
https的特点 1. https有 握手阶段 和 请求阶段2. 握手阶段 使用 非对称加密算法 请求阶段 使用 对称加密算法3. 保证数据的完整性使用数字签名4. 握手阶段有两组非对称加密,数字证书 ...
- Android之框架20160721
Android的四层架构分别为:Linux2.6内核层,核心库层,应用框架层,应用层. 其中Framework层为我们开发应用程序提供了非常多的API,我们通过调用特殊的API构造我们的APP,满足我 ...
- [LeetCode] 31. Next Permutation ☆☆☆
Implement next permutation, which rearranges numbers into the lexicographically next greater permuta ...
- UVA 818 Cutting Chains
https://vjudge.net/problem/UVA-818 题意: 有n个圆环,其中有一些已经扣在了一起.现在需要打开尽量少的圆环,使得所有圆环可以组成一条链 n<=15 因为n< ...
- 笔记(二)TabLayout + ViewPager + FragmentPagerAdapter 组合用法
TabLayout的xml文件 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" ...
- 解决Ubuntu终端里面显示路径名称太长
方法/步骤 找到配置文件先进行备份: cp ~/.bashrc ~/.bashrc-bak 找到配置文件修改: vi ~/.bashrc 备份是为了防止配置修改出错,可以还原: 下面是我的/h ...