go基础语法

Wesley13
• 阅读 605

1.常量定义

用const关键字修饰常量名并赋值,常量命名不同于java等语言,golang中一般用小写,因为在golang中首字母大写表示public权限

const a = 3

2.常量使用

使用数值常量进行运算时不需要进行强制类型转换,编译器会自动识别

const a,b = 3,4
var c int
c = int (math.Sqrt((a*a+b*b)))

3.枚举类型

golang没有特殊的关键字表示枚举,直接用const声明一组常量即可

const (
    c      = 0
    cpp    = 1
    scala  = 2
    python = 3
    golang = 4
    )

4.自增枚举

定义时,让第一个枚举值等于iota,后面的枚举不用赋值,编译器会自动赋值,iota:0开始以1为步进自增

const (
    c      = iota
    cpp
    scala
    python
    golang
    )

测试代码

package main
import (
    "fmt"
    "math"
)
/*
常量定义
 */
func consts() {
    const (
        fileName = "abc.txt"
        a, b     = 3, 4
    )
    var c int
    c = int(math.Sqrt((a*a + b*b))) //不需要强制类型转换
    fmt.Println(c, fileName)
}
/*
普通枚举
 */
func enums() {
    const (
        c      = 0
        cpp    = 1
        scala  = 2
        python = 3
        golang = 4
    )
    fmt.Println(c, cpp, scala, python, golang)
}
/*
自增枚举
 */
func iotaEnums(){
    //普通自增
    const (
        c      = iota
        cpp
        scala
        _            //占位符
        golang
    )
    //程序员自增
    const (
        b = 1 << (10*iota)
        kb
        mb
        gb
        tb
        pb
    )
    fmt.Println(golang,scala,cpp,c)
    fmt.Println(b,kb,mb,gb,tb,pb)
}
func main() {
    consts()
    enums()
    iotaEnums()
}
点赞
收藏
评论区
推荐文章
blmius blmius
2年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Jacquelyn38 Jacquelyn38
2年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Stella981 Stella981
2年前
PHP中const的使用
(最近开始PHP语言的学习,在这里记录点滴)const常量的定义,不同于PHP中变量的定义,在名称前不使用$符号。不能用public和static修饰。而且在类内调用常量的时候需要使用self来进行调用。const是一种语言结构,不支持表达式类型的定义。例如:非常简单的日志类定义<?php  
Wesley13 Wesley13
2年前
MySQL数据查询(重点)
1.查询所有列  \为所有列select\fromtable\_name;2.查询指定列selectid,agefromtable\_name;3.查询时添加常量列本次查询有效,不会添加到表中,只显示 可以用as来命名本列名select'java0328'fromtable\_name;
Wesley13 Wesley13
2年前
3_PHP表达式_1_常量
以下为学习孔祥盛主编的《PHP编程基础与实例教程》(第二版)所做的笔记。PHP常量分为自定义常量与预定义常量。1.自定义常量  在使用前必须先定义,PHP的define()函数专门用于定义自定义常量,define()函数的语法格式为:define(name,value\,booleancase\_insensitive\)。  
Wesley13 Wesley13
2年前
unity游戏开发之ULua框架介绍(二)
1.SimpleFramework框架配置文件(1)AppConst文件  在AppConst.cs文件中配置了很多项目开发过程中,需要使用到的“公共常量信息”。脚本内的常量都有中文备注。所在位置是:Scripts/ConstDefine/AppConst.cs。  字段用“const”关键字修饰,方法用“static”关键字修饰,该脚本内
Wesley13 Wesley13
2年前
OC常量、变量、属性及其特性
1.ObjectiveC中声明常量使用关键字const。如:constdoublePI3.1514;2.ObjectiveC中变量可以分为成员变量、局部变量和全局变量(用的很少,尽量不要用)。//————————常量—————————————————//方法一:definekDetailKey  
Wesley13 Wesley13
2年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
3个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这