首页 > 其他分享 >03.常量与枚举

03.常量与枚举

时间:2024-07-06 16:11:58浏览次数:16  
标签:03 const 常量 int fmt filename 枚举 func Println

  定义常量

不需要像其他语言一样大写常量变量名,一定要赋值  

func consts() {
    const filename = "test.txt"
    const a, b = 3, 4
    var c int
    c = int(math.Sqrt(a*a + b*b))
    fmt.Println(filename, c)
}

也可包内定义,所有函数都可用

//也可包内定义,所有函数都可用
const filename = "test.txt"
func consts() {
    const a, b = 3, 4
    var c int
    c = int(math.Sqrt(a*a + b*b))
    fmt.Println(filename, c)
}

可定义到一个组内

func consts() {
    const (
        filename = "test.txt"
        a, b = 3, 4
    )
    var c int
    c = int(math.Sqrt(a*a + b*b))
    fmt.Println(filename, c)
}

 

特殊的常量--枚举类型

常规写法

func enums() {
    const (
        java  = 0
        python = 1
        golang = 2
    )
    fmt.Println(java, python, golang)
}

可以使用 iota 简化,实现自增

func enums() {
    const (
        java= iota
        python
        golang
    )
    fmt.Println(java, python, golang)
}

运行结果:

 复杂点的用法

func enums() {
    // b, kb, mb, gb, tb, pb
    const (
        b = 1 << (10 * iota)
        kb
        mb
        gb
        tb
        pb
    )
    fmt.Println(b, kb, mb, gb, tb, pb)
}

 

标签:03,const,常量,int,fmt,filename,枚举,func,Println
From: https://www.cnblogs.com/JJJHaoran/p/18287352

相关文章

  • A value of type 'Scaffold?' can't be assigned to a variable of type 'Scaffold&#0
    原来的代码classContextRouteextendsStatelessWidget{constContextRoute();@overrideWidgetbuild(BuildContextcontext){returnScaffold(appBar:AppBar(title:Text("Context测试"),),body:Container(......
  • 栈溢出入门03 ret2syscall ROP NX绕过
    本例题会使用ROP技术来绕过堆栈不可执行保护(NX保护),随着NX保护的开启,以往直接向栈或者堆上直接注入代码的方式难以继续发挥效果。攻击者们也提出来相应的方法来绕过保护,目前主要的是ROP(ReturnOrientedProgramming),其主要思想是在栈缓冲区溢出的基础上,利用程序中已有的小片段......
  • c++基础知识——常量和变量
    常量1.常量的性质在程序运行的过程中,其值不改变的量称为常量。常量分为两种:一类直接写出它的值,称为字面值常量,如123,'abc',true等;一类是使用const修饰的对象。2.整形字面值常量整形字面值常量采用我们平常使用的十进制整数表示。如138,0,-512等,都是整形常量,二18.1,32.6等不是整......
  • 1 SAP前台操作手册-PP模块-BOM主数据创建、修改(删除)、显示(CS01,CS02,CS03单个,CS11
    0总体说明SAP实施项目中,到了第3个阶段-系统实现,在这个阶段,因为蓝图汇报已经结束,配置也差不多完成了,自开发还在进行中,SAP标准功能下,可以进行基础业务的前台操作了,在实现阶段的末端,客户指定的关键用户(俗称KU-KeyUser)会进行前台业务操作和练习,提高熟练程度,同时需要在外部SAP顾......
  • 代码随想录算法训练营第二天 | 203.移除链表元素 707.设计链表 206.反转链表
    代码随想录算法训练营第二天|203.移除链表元素707.设计链表206.反转链表进入链表章节,就要和虚拟头结点(dummyhead)打交道了,还要注意边界条件和空指针异常移除链表元素题目链接/文章讲解/视频讲解::https://programmercarl.com/0203.%E7%A7%BB%E9%99%A4%E9%93%BE%E8%A1%A......
  • 解决linxu The type initializer for 'Gdip' threw an exception.
    问题很简单,引用的图像库出问题了,我使用的centosstream8,.net8的框架,引用的图像库是System.Drawing.CommonImagesourceImage=Image.FromFile(sourcePath)using(BitmapnewImage=newBitmap(900,383)){......
  • 代码随想录算法训练营第五十三天 | 739.每日温度 496.下一个更大的元素I 503.下一个更
    739.每日温度题目链接文章讲解视频讲解单调栈适合的场景:求当前元素左面或右面第一个比它大或小的元素单调栈里存什么元素只要存下标就可以了,比较元素时可以通过下标取元素单调栈是单调增还是单调减(从栈顶到栈底)使用单调增的单调栈解题步骤:遍历数组,当栈空时直接入栈......
  • 代码随想录刷题day 3 | 链表理论基础 203.移除链表元素 707.设计链表 206.反转链
    203.移除链表元素classSolution{publicListNoderemoveElements(ListNodehead,intval){ListNodevirHead=newListNode(0,head);ListNodetmp=virHead;while(tmp.next!=null){if(tmp.next.val==val){......
  • 代码随想录算法训练营第3天| 203.移除链表元素 ,707.设计链表 ,206.反转链表
    学习任务:链表理论基础Leetcode203.移除链表元素Leetcode707.设计链表Leetcode206.反转链表Leetcode203.移除链表元素难度:简单|相关标签:递归、链表题目:给你一个链表的头节点head和一个整数val,请你删除链表中所有满足Node.val==val的节点,并返回新的头节......
  • 使用napi实现ts枚举类型
    在napi模块中定义枚举类型枚举类型不是js的原生类型,它是ts中独有的语法,但是napi方法仅支持操作js对象。下文将提供一个demo用来实现一个js的enum类。分析ts枚举类的实现方式定义一个ts枚举类TypeScript代码如下:enumEnumClass{VAL_A=0,VAL_B,VAL_C,}......