zoukankan      html  css  js  c++  java
  • [Go语言] 基础语法关注点

    类型在变量名的后面 ,生命和赋值可以连在一起
    var a int 或 var s string
    a := 15 b:= false

    多变量声明,也支持一行声明以及平行赋值
    var (
    x int
    b bool
    )

    特殊变量 _(下划线): 任何赋给他的值都会被丢弃

    变量声明却没有使用 会报错
    混合使用不同类型的变量赋值 会报错

    常量只能是 数字 字符串(不可变) 布尔型

    itoa 可以生成枚举类型,默认第一个itoa 表示0
    const(
    a = itoa
    b
    )
    a=0,b=1

    字符串在go中是 双引号 单引号不可以

    var e error 定义了一个error 类型的变量e,其的值是nil

    go语言中没有do或者while循环 只有for,switch if select
    if语句控制中,大括号是强制的,并且需要与if在同一行

    支持goto,标签大小写敏感

    for int i;condition;port {} 和C的for一样
    for condition {} 和while一样
    for {} 死循环

    break提前退出循环,终止当前循环,循环嵌套需要指定标签来决定结束哪一个循环

    continue让循环进入下一个迭代

    switch 表达式不必是常量或者整数,执行过程从上到下。
    与C不同的是 不会匹配失败后自动向下尝试,但可以使用后fallthrough关键字使其这样做
    表达式可以使用,逗号进行多项匹配

    array 声明的时候必须在方括号中输入一些内容
    [n]type 例如 var arr[10] int a := [3]int{1,2,3} a := [...]int{1,2,3}

    slice 与array接近,新元素加入的时候可以增加长度,使用make函数创建引用。支持append、copy操作

    map map[<from type>]<to type>
    map只声明不初始化的时候使用 make函数

  • 相关阅读:
    两路归并算法
    个性化搜索引擎调研(三)
    编程珠玑开篇磁盘文件排序问题
    Lucene里经常被聊到的几个话题
    成就霸业的座右铭(绝对经典)
    别人对你的态度,决定了你的命运
    iBATIS缓存实现分析[转]
    Taste/Thoth:Taste Architecture 概览【转Beyond Search】
    中文分词算法笔记
    ConcurrentModificationException主要原因及处理方法
  • 原文地址:https://www.cnblogs.com/zlzlnet/p/5960536.html
Copyright © 2011-2022 走看看