Go语言中文网 为您找到相关结果 271

GoLang 学习笔记 - 运算符

运算符用于在程序运行时执行数学或逻辑运算。 Go 语言内置的运算符有: 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 其他运算符 算术运算符 下表列出了所有Go语言的算术运算符。假定 A 值为 15,B 值为 5 。 运算符 描述 实例 + 相加 A + B 输出结果 20 - 相减 A - B 输出结果 10 * 相乘 A * B 输出结果 75 / 相除 B / A 输出结果 3 % 求余 B % A 输出结果 0 ++ 自增 A++ 输出结果 16 -- 自减 A-- 输出结果 14 GoLang 中 ++ 和 -- 操作只可以当成一个语句来使用,不可以作为表达式。这样可以避免很多问题。 a ++ //允许 b = a++ //不允许 即便如此,自增和自减仍然是一种很不规范...阅读全文

博文 2019-07-20 21:32:37 凉丶心园

DAY2 GOLANG(二)运算符和程序流程控制

标识符(命名变量,函数等)一些规范:不能以数字开头,_代表空标识符包名:保持package和目录一致,变量名,函数名,常量名:采用驼峰法首字母大写是公有的,首字母小写是私有的跨包使用,包名+变量名 (与文件名无关)算数运算符/除法 %取余数10/4 =2 10.0/4 =2.5 如果希望保留小数部分被保留,则需浮点型参与运算i++,i-- 自增或者自减只能独立使用 i=i++ 错 i++ 对且golang中只有后加加(或后减减),没有前加加(或前减减)逻辑运算符与: &&(全真为真) 或:|| (有真为真) 非: !&&又称,短路与,如果第一条件为false,则第二条件不会判断,且最终结果为false|| 又称,短路或:,如果第一条件为true,则第二条件不会判断,且最终结果为true赋值运...阅读全文

博文 2019-10-28 18:32:45 aside section._1OhGeD

Types of GoLang

Types of GoLang [TOC] bool Numeric Types int8, int16, int32, int64, int uint8, uint16, uint32, uint64, uint float32, float64 complex64, complex128 byte rune String Bool bool type represents a boolean, either true or false package main import "fmt" func main(){ a := true b := false fmt.Println("boolean a:",a ,"b:",b) c := a && b d := a || b fmt.Prin...阅读全文

博文 2019-07-12 18:32:40 Cease息事

golang之Json

1. json字符串解析: json.Unmarshal(b, &f) json字符串解析到结构体中: package main import ( "encoding/json" "fmt" ) type Server struct { ServerName string ServerIP string } type Serverslice struct { Servers []Server } func main() { var s Serverslice str := `{"servers":[{"serverName":"Shanghai_VPN","serverIP":"127.0.0.1"},{"serverName":"Beijing_VPN","serverIP":"127.0...阅读全文

博文 2019-10-14 20:33:34 aside section ._1OhGeD

Golang筑基 ——运算符

golang的运算符同C/C++一样,共有如下几种 算术运算符 下表列出了所有Go语言的算术运算符。假定 A 值为 10,B 值为 20。 图片.png 注意: 自增(++)和自减(--)不同于C/C++,a++和++a在golang中是没有区别的,同理,a--和--a也是如此。我觉得这也是golang方便之处,去除一些没必要功能设计,让语言本身更便捷。 关系运算符 下表列出了所有Go语言的关系运算符。假定 A 值为 10,B 值为 20。 图片.png 逻辑运算符 下表列出了所有Go语言的逻辑运算符。假定 A 值为 True,B 值为 False。 图片.png 位运算符 位运算符对整数在内存中的二进制位进行操作。 下表列出了位运算符 &, |, 和 ^ 的计算: 图片.png 赋值运算符...阅读全文

博文 2020-04-13 21:32:49 技术修仙

5.2.5Golang的运算符

目录:https://www.jianshu.com/p/e406a9bc93a9 运算符 golang的运算符有五种: 1.算术运算符 2.比较运算符 3.逻辑运算符 4.位运算符 5.赋值运算符 算术运算符 运算符 描述 + 相加 - 相减 * 相乘 / 相除 % 求余 例子: var ( a = 5 b = 2 ) // 算术运算符 fmt.Println("a + b:",a + b) fmt.Println("a - b:",a - b) fmt.Println("a * b:",a * b) fmt.Println("a / b:",a / b) fmt.Println("a % b:",a % b) a ++ // go语言中的 ++ -- 是一个单独的语句 fmt.Print...阅读全文

博文 2020-03-16 17:32:56 寒暄_HX

小浩算法|一文让你学会如何用代码判断"24"点

“24点”是一种数学游戏,正如象棋、围棋一样是一种人们喜闻乐见的娱乐活动。它始于何年何月已无从考究,但它以自己独具的数学魅力和丰富的内涵正逐渐被越来越多的人们所接受。今天就为大家分享一道关于“24点”的算法题目。 话不多说,直接看题。 题目:你有 4 张写有 1 到 9 数字的牌。你需要判断是否能通过 *,/,+,-,(,) 的运算得到 24。 示例 1:输入: [4, 1, 8, 7] 输出: True 解释: (8-4) * (7-1) = 24 示例 2: 输入: [1, 2, 1, 2] 输出: False 注意: 除法运算符 / 表示实数除法,而不是整数除法。例如 :4 / (1 - 2/3) = 12 。 每个运算符对两个数进行运算。特别是我们不能用 - 作为一元运算符。例如,[...阅读全文

博文 2020-02-26 10:32:42 宜信技术学院

Go-002 基本语法

1 hello world 1.1 代码 package main import "fmt" func main() { fmt.Println("hello world") } 1.2 执行 // 方法1 编译并执行 go run ./test002.go // 方法2 先构建后执行 go build ./test002.go // 构建 ./test002 // 执行 2 代码语法要素 2.1.语句 statement,构成源代码最基本的逻辑单位。 2.2.语句结束符 语句是需要结束的,所以需要语句结束符,标准的语句结束符为分号( ; )。 在 Go 的源代码中,绝大多数的情况可以省略语句结束符。从 go 的编译器的角度,会自动添加语句结束符。自动添加的情况为: 标识符(各种名字):如变...阅读全文

博文 2020-02-22 15:32:52 LikePlayAPiano

6.运算符

Go语言基础之运算符 | Golang 运算符用于在程序运行时执行数学或逻辑运算。 运算符 Go 语言内置的运算符有: 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 算数运算符 运算符 描述 + 相加 - 相减 * 相乘 / 相除 % 求余 注意: ++(自增)和--(自减)在Go语言中是单独的语句,并不是运算符。 关系运算符 运算符 描述 == 检查两个值是否相等,如果相等返回 True 否则返回 False。 != 检查两个值是否不相等,如果不相等返回 True 否则返回 False。 > 检查左边值是否大于右边值,如果是返回 True 否则返回 False。 >= 检查左边值是否大于等于右边值,如果是返回 True 否则返回 False。 < 检查左边值是否小于右边值,如果...阅读全文

博文 2020-04-05 13:32:48 雪上霜

【Golang 基础】Go 语言的数组

Go 语言中的数组 定义数组的格式:var [n], 其中 n >= 0; package basic import "fmt" func DeclaratArray(){ // 定义指定长度的数组 var arr1 [5]int fmt.Println(arr1) // [0 0 0 0 0] // 不设置数组长度 arr2 := [...]int{} fmt.Println(arr2) // [] // 定义指定长度的数组,并赋值 arr3 := [2]int{ 1, 5 } fmt.Println(arr3) // [1 5] } 通过 new 关键字声明数组,返回一个指向该数组的指针; package basic import "fmt" func...阅读全文

博文 2019-03-26 02:34:42 爱写作的程序猿

【Go】类似csv的数据日志组件设计

文链接:https://blog.thinkeridea.com/... 我们业务每天需要记录大量的日志数据,且这些数据十分重要,它们是公司收入结算的主要依据,也是数据分析部门主要得数据源,针对这么重要的日志,且高频率的日志,我们需要一个高性能且安全的日志组件,能保证每行日志格式完整性,我们设计了一个类 csv 的日志拼接组件,它的代码在这里 datalog。 它是一个可以保证日志各列完整性且高效拼接字段的组件,支持任意列和行分隔符,而且还支持数组字段,可是实现一对多的日志需求,不用记录多个日志,也不用记录多行。它响应一个 []byte 数据,方便结合其它主键写入数据到日志文件或者网络中。 使用说明 API 列表 NewRecord(len int) Record 创建长度固定的日志记录 N...阅读全文

博文 2019-07-21 12:02:36 thinkeridea

4. 类型

4. 类型 下面是 Go 支持的基本类型: bool 数字类型 int8, int16, int32, int64, int uint8, uint16, uint32, uint64, uint float32, float64 complex64, complex128 byte rune string bool bool 类型表示一个布尔值,值为 true 或者 false。 package main import "fmt" func main() { a := true b := false fmt.Println("a:", a, "b:", b) c := a && b fmt.Println("c:", c) d := a || b fmt.Println("d:", d) ...阅读全文

博文 2019-08-29 11:32:56 泷汰泱

LeetCode|371. 两整数之和

题目描述 等级: 简单 不使用运算符 + 和 - ,计算两整数a 、b之和。 示例1: 输入: a = 1, b = 2 输出: 3 示例2: 输入: a = -2, b = 3 输出: 1 思路 对于位运算的考察。 在位运算中,异或操作获取的是两个数的无进位和,异或:相同为0,不同为1。如, 2^3 0010 ^ 0011 ------- 0001 我们知道,2+3=5,5的二进制是0101。前面已经知道了无进位和,下面获取进位的数:看a&b 2&b 0010 & 0011 -------- 0010 发现结果左移1位就是最终结果的进位数: 0010 << 1 = 0100 0100再异或0001: 0100 ^ 0001 ------- 0101 这样循环操作,直到进位数为0。 答案 f...阅读全文

博文 2019-12-06 11:32:40 clawhub

Golang 基础数据类型(一)

基础数据类型 在Go语言中,数据类型用于声明函数与变量、常量数据的类型,声明何种数据类型主要是为了提高内存的利用率,因为不同的数据类型在内存所需要的空间大小是不一样的。 Golang内置基础数据类型如下表所示: 数据类型名称 类型和描述 boolean 布尔型,值可以是常量true或false int&uint 带符号和无符号两种整型。int8,int16,int32(rune),int64和uint8(byte),uint16,uint32,uint64。uintptr类型在指针小节中单独介绍。 float32&float64 Golang没有float这种类型,只有float32和float64两种类型 complex64&complex128 复数类型,complex64包含float...阅读全文

每天一点Go语言——变量、常量、运算符解析

每天一点Go语言——变量、常量、运算符解析 前言 ​ 前面简单说过有关Go语言的基础语法及其数据类型,大致上了解了Go语言程序的组成,而本文将讲述近乎所有编程语言都涉及的变量、常量以及运算符相关内容。 一、变量 何为变量? ​ 对该专业名词解释:计算机语言中能储存计算结果或能表示值抽象概念。变量可以通过变量名访问。Go语言中的变量由字母、数字、下划线组成,首字母不可以为数字。耳熟能详了哈~ ​ 笔者的理解:我编写程序的时候需要使用一个值,并且我一直想要重复使用,而且有时候这个值会发生变化等等,所以我需要声明一个变量来被这个值赋之。 怎么声明变量? 变量声明一般格式: var 变量名 变量类型 var:变量声明关键字,表示声明变量 其次是变量的名字,最后是变量的类型(如int) 当然也有其他的...阅读全文

博文 2020-04-04 15:33:12 wx5d8a17c45cb5b

Go-004 常量

1 概述 一旦定义,其值不可更改的量,称之为常量。也是常量标识符和常量值。 常量用于存储简单数据类型:数值,字符串。 2 定义 语法:const c1 string = “GoLang” 语法上,支持批量定义,支持类型推导: const ( c1 int = 42 c2 = 42 c3 = "golang" ) fmt.Println(c1,c2,c3) 注意: 批量定义,若 后边的只写常量名,则代表和上一个一致 const ( c1 = 42 c2 c3 ) fmt.Println(c1,c2,c3) // 42 42 42 3 使用常量的意义 防止被无意的修改。 将特定的数据语义化。 例如错误处理,使用不同的数值,表示不同的错误级别,如下所示: // 1023 表示全部的错误级别 // ...阅读全文

博文 2020-02-22 15:32:50 LikePlayAPiano

Golang 学习笔记:程序结构

Go语言的程序元素 Go语言包含了五种程序符号,分别是标识符(identifier)、关键字(keyword)、运算符(operator)、分隔符(delimiter)与字面量(literal)。这五种程序元素组合成各种表达式和语句。 标识符标识符是用于标识变量、函数或任何用户自定义项目的名称(程序实体) 标识符可分为两类,一类是用户定义的标识符,作为程序实体存在;另一类是预定义标识符,它们在Go语言中的源代码被声明(如数据类型)。还有一个特殊的标识符,叫空标识符,记作 "_",一般用在变量声明与包的导入中。例如,在Go语言程序中,若存在一个没有使用的变量a,那么编译时就会报错,因为Go语言要求存在的程序实体必须被使用,这时就可以使用这样一句 _=a 的代码,编译器就会认为已经使用了变量a(...阅读全文

博文 2020-06-03 13:32:41 sunlingbot

python3.8版本已经更新,数据分析师和数据开发者看过来

python3.8版本已经更新,数据分析师和数据开发者看过来 新版本python3.8已经发布 作为一个放弃java转投python很多年的数据开发者,已经好久没有更新python了,也很久没有关注python的一些新功能新特性了,去年把自己做的几个小项目更新到了python3.6,然后就一直没把精力放到这一块了。 今天因为安装一个第三方库失败,打算去官网看下python的更新情况,发现已经更新至python3.8.2了,那么就当机立断下载安装,顺便学习一下python3.8的新特性吧。 安装python3.8.2 windows下的安装很简单,直接下载msi安装文件双击就可以了,然后稍微配置一下环境变量。 Linux下稍微复杂一点,主要是因为没有合适的yum安装包,具体步骤如下: # 下载...阅读全文

博文 2020-04-08 07:32:44 数据驱动手记

leetcode_622

Golang: 思路:直接用数组实现了,感觉有点不太符合题意 代码如下: type MyCircularQueue struct { stack []int length int } /** Initialize your data structure here. Set the size of the queue to be k. */ func Constructor(k int) MyCircularQueue { return MyCircularQueue{ stack:[]int{}, length:k, } } /** Insert an element into the circular queue. Return true if the operation is succe...阅读全文

博文 2020-04-02 09:32:58 淳属虚构

leetcode_68

Golang: 思路:刚开始看题会觉得有些麻烦,但实际上,也没啥技巧,就是处理字符串 代码如下: func fullJustify(words []string, maxWidth int) []string { var wordlist []string var res []string j,length:=0,0 for jmaxWidth{ //结束,处理wordlist handleWordList(wordlist...阅读全文

博文 2020-03-23 19:32:47 淳属虚构

leetcode_1002

Golang: 思路:每个字符串进行比较即可 代码如下: func commonChars(A []string) []string { arr1:=make([]int,26) for k,w:=range A{ arr2:=make([]int,26) for _,b:=range w{ arr2[b-'a']++ } if k==0{ copy(arr1,arr2) }else{ for k,_:=range arr1{ arr1[k]=min(arr1[k],arr2[k]) } } } var res []string for k,v:=range arr1{ for i:=0;i阅读全文

博文 2020-04-15 09:32:45 淳属虚构