E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
go语言学习笔记
Go语言学习笔记
(十二)------协程(goroutine)与通道(channel)
一、并发、并行和协程1.Go语言为构建并发程序的基本代码块是协程(goroutine)与通道(channel)。他们需要语言,编译器,和runtime的支持。Go语言提供的垃圾回收器对并发编程至关重要。不要通过共享内存来通信,而通过通信来共享内存。通信强制协作。2.一个应用程序是运行在机器上的一个进程;进程是一个运行在自己内存地址空间里的独立执行体。一个进程由一个或多个操作系统线程组成,这些线程其
Rcvisual
·
2019-02-26 09:01
Go
Go语言学习笔记
(十)------读写数据
一、读取用户的输入1.从键盘和标准输入os.Stdin读取输入,最简单的办法是使用fmt包提供的Scan和Sscan开头的函数。Scanln扫描来自标准输入的文本,将空格分隔的值依次存放到后续的参数内,直到碰到换行。Scanf与其类似,除了Scanf的第一个参数用作格式字符串,用来决定如何读取。Sscan和以Sscan开头的函数则是从字符串读取,除此之外,与Scanf相同。如果这些函数读取到的结果
Rcvisual
·
2019-02-22 11:42
Go
Go语言学习笔记
(八)------结构(struct)与方法(method)
一、结构体定义1.Go通过类型别名(aliastypes)和结构体的形式支持用户自定义类型,或者叫定制类型。结构体也是值类型,因此可以通过new函数来创建。组成结构体类型的那些数据称为字段(fields)。每个字段都有一个类型和一个名字;在一个结构体中,字段名字必须是唯一的。结构体定义的一般方式如下:typeidentifierstruct{field1type1field2type2...}ty
Rcvisual
·
2019-02-20 12:05
Go
Go语言学习笔记
(六)------Map
一、声明、初始化和make1.map是一种特殊的数据结构:一种元素对(pair)的无序集合,pair的一个元素是key,对应的另一个元素是value,所以这个结构也称为关联数组或字典。这是一种快速寻找值的理想结构:给定key,对应的value可以迅速定位。2.map是引用类型,可以使用如下声明:varmap1map[keytype]valuetype,例如:varmap1map[string]in
Rcvisual
·
2019-02-19 16:25
Go
Go语言学习笔记
(五)------数组与切片
一、声明和初始化1.数组是具有相同唯一类型的一组已编号且长度固定的数据项序列(这是一种同构的数据结构);这种类型可以是任意的原始类型例如整型、字符串或者自定义类型。数组长度必须是一个常量表达式,并且必须是一个非负整数。数组长度也是数组类型的一部分,所以[5]int和[10]int是属于不同类型的,数组的编译时值初始化是按照数组顺序完成的。如果我们想让数组元素类型为任意类型的话可以使用空接口作为类型
Rcvisual
·
2019-02-19 11:49
Go
Go语言学习笔记
(一)------目录
笔记目录
Go语言学习笔记
(一)------目录
Go语言学习笔记
(二)------Go的基本结构和要素
Go语言学习笔记
(三)------控制结构
Go语言学习笔记
(四)------函数Go
Rcvisual
·
2019-02-15 09:47
Go
GO语言学习笔记
(五)GO语言函数的简易计算
一、计算示例packagemainimport"fmt"funcmain(){a:=100b:=2fmt.Printf("%d+%d=%d\n",a,b,Add(a,b))fmt.Printf("%d-%d=%d\n",a,b,Sub(a,b))fmt.Printf("%d*%d=%d\n",a,b,Mul(a,b))fmt.Printf("%d/%d=%d\n",a,b,Div(a,b))}fu
Mr大表哥
·
2019-01-28 17:48
GO
闭包
匿名函数
Go语言学习笔记
GO语言学习笔记
(四)GO语言控制语句
一、小程序要求:输出100以内能被2整除的数代码如下:packagemainimport"fmt"funcmain(){varmaxint=100number:=2fori:=1;i=30||age=3{break}}}解释:在一个for循环中,首先定义一个条件,条件可以分为三块。1、初始化变量i赋值为12、i要小于103、每次循环i就自动加1for循环并输出值,并开始判断i的值如果大于等于3的时
Mr大表哥
·
2019-01-28 16:42
GO
for
if
Go语言学习笔记
GO语言学习笔记
(三)初写GO程序
一、第一个程序名称:helloworld.gopackagemainimport"fmt"funcmain(){fmt.Println("helloworld!")}知识点1:Go语言的代码文件一般是以.go作为后缀。运行helloworld.go执行:gorunhelloworld.go输出结果:helloworld!知识点2:使用run参数的意思是编译并运行。编译成二进制文件执行:gobuil
Mr大表哥
·
2019-01-25 17:11
GO
CGO
Go语言学习笔记
GO语言学习笔记
(二)IDE安装与配置、格式化代码、生成代码文档、中文在线指南gotour
一、安装golandIDE1、golandIDE的下载下载地址:(我这里是下载的mac版,因为我的是mac本)https://download-cf.jetbrains.com/go/goland-2018.3.3.dmg2、golandIDE的安装临时激活,有效期只有100天1)一路下一步在这个页面,选择第二项“Activationcode”激活2)登录下面的网址http://idea.lany
Mr大表哥
·
2019-01-24 19:37
goland
GO
语言学习
Go语言学习笔记
GO语言学习笔记
(一)Go语言的初步了解
一·、Go语言的官方网站https://golang.org/dl/二、安装Go语言Linux版本:mac版本和windows版本安装没啥说的,一直“ok”“下一步”就可以了tarzxfgo1.11.4.linux-amd64.tar.gzmvgo/usr/local/mkdir-p/usr/local/go/gocode/{bin,pkg,src}解释:gocode:是工作空间,涉及源代码的存放
Mr大表哥
·
2019-01-24 17:27
Go
语言
初步
Go语言学习笔记
Go语言学习笔记
六--string编码
分解探索string编码转为byte数组funcmain(){s:="Hi小智加油!"fmt.Println("len(s):",len(s))//len(s):15为什么是15呢?for_,v:=range[]byte(s){fmt.Printf("%X",v)//%X转为16进制//4869E5B08FE699BAE58AA0E6B2B921//猜测从第三个开始(E5B08F)->小,后面都是
cdzjava
·
2019-01-19 10:22
Go语言学习
string
go语言
golang
基础语言教程
GO语言学习笔记
(一)——我后悔了篇
学习一门语言,首先要明确这门语言的特性,以及为何学习1.那么为什么是GO,首先来了解GO的诞生背景一句话总结:GO语言的诞生是为了解决当下对并发支持不友好,编译速度慢,编程复杂这三个问题。首先是摩尔定律几近失效,由于越往后发展,制程工艺越先进,集成程度也越来越高,但是所带来的代价就是每一次新型制程工艺的开发都要面临更高的难度和更大的经济压力,因此多核服务器成为了主流,以往的编程语言都是在单核的基础
ZJJ_5346
·
2019-01-14 18:10
Go语言学习笔记
-Go协程
并发(concurrency)是指一次处理大量事情的能力。让我们用一个例子来说明。并行(parallelism)指的是同时处理多个事情。虽然听起来像并发,但是它们是不同的。并行并不一定比并发快,举一个例子,当文件下载完成时,应该使用弹出窗口来通知用户。而这种通信发生在负责下载的组件和负责渲染用户界面的组件之间。在并发系统中,这种通信的开销很低。而如果这两个组件并行地运行在CPU的不同核上,这种通信
努力的夏目_1bbc
·
2018-12-13 19:55
Go语言学习笔记
-interface接口✨
接口是一个或多个方法签名的集合,任何类型的方法集中只要拥有与之对应的全部方法,就表它"实现"了该接,必须在该类型上显式添加接口声明。引用类型。接口的使用一、packagemainimport"fmt"typeMystringstringtypeFinderinterface{FindVowels()[]runetest()}//方法的实现func(msMystring)test(){}func(m
努力的夏目_1bbc
·
2018-12-10 09:05
go语言学习 1 -- 类型
学习可参考书籍:老许的《go语言编程》、老谢的《goweb编程》、雨痕的《
go语言学习笔记
》、golang.org上面的《EffectiveGo》、《TheGoP
陆拾贰
·
2018-12-03 21:56
go/golang
Go语言学习笔记
----(一)初见
Go(golang)编译型语言已经有(C,C++,Java,C#,Objective-C),快速业务开发的解释型语言有(PHP,Python,Perl,Ruby,JavaScript,Lua等。)为什么要Go?众所周知,‘万物源于C’,2000年后Java逐渐取代C的王者位置,但Java编程体验未尽如人意。Go希望成为互联网时代的C语言。Go特点:并行与分布式软件工程的支持编程哲学的重塑。语言简史
ScratKong
·
2018-10-20 21:34
其他
Go语言学习笔记
--unsafe.Pointer 和 uintptr
这里有一些关于unsafe.Pointer和uintptr的事实:uintptr是一个整数类型。即使uintptr变量仍然有效,由uintptr变量表示的地址处的数据也可能被GC回收。unsafe.Pointer是一个指针类型。但是unsafe.Pointer值不能被取消引用。如果unsafe.Pointer变量仍然有效,则由unsafe.Pointer变量表示的地址处的数据不会被GC回收。uns
cbmljs
·
2018-10-09 15:58
golang
指针
Golang
golang学习
go语言学习笔记
一、条件判断if1、条件判断iftrue{println(true)}2、初始化;条件判断比较有特色的是go的if支持初始化语句的执行。可以减少行数可以明确条件判断表达的意义x:=1ifx++;x==2{println("先计算,再判断")}ifc:=3;x==2{println("先赋值,再判断")}//异常错误处理ifvalue,err:=check();err!=nil{log.Printl
王乐城愚人云端
·
2018-09-09 21:13
go语言学习笔记
22------Go语言并发编程②
1.Goroutine1.1什么是Goroutinegoroutine是Go语言并行设计的核心,有人称之为go程。goroutine说到底其实就是协程,它比线程更小,十几个goroutine可能体现在底层就是五六个线程,Go语言内部帮你实现了这些goroutine之间的内存共享。执行goroutine只需极少的栈内存(大概是4~5KB),当然会根据相应的数据伸缩。也正因为如此,可同时运行成千上万个
Delato
·
2018-09-05 22:56
Go语言与区块链
Goland
Go语言学习笔记
--读写数据
0666)文件拷贝拷贝一个文件到另外一个文件,使用io包src,err:=os.Open(srcName)dst,err:=os.OpenFile(dstName,os.O_WRONLY|os.O_CREATE,0644)io.Copy(dst,src)从命令行读取参数os包总有一个string类型的切片变量os.Args,用来存放命令行参数os.Args[1:]flag包flag包有一个扩展功能
cbmljs
·
2018-09-05 18:05
Golang
golang学习
go语言学习笔记
-快速排序
funcquickSort(s[]int)[]int{iflen(s)p{greater=append(greater,v)}}returnappend(append(quickSort(less),[]int{p}...),quickSort(greater)...)}
令三三
·
2018-09-03 16:54
go学习笔记
GO语言学习笔记
-缓冲区Channels和线程池
GO语言学习笔记
-缓冲区Channels和线程池6月04,2018发布在Golang,菜鸟翻译屋http://www.hi-roy.com/2018/06/04/GO%E8%AF%AD%E8%A8%80%
章鱼哥1042
·
2018-08-08 17:05
go
go语言学习笔记
-struct结构体
理解用来自定义数据结构,把需要的有关联的字段集合到一起,有点类型map的key-value形式,还支持嵌套声明一个结构体并使用//声明typestustruct{namestringageintmajorstring}stu1:=stu{name:"nick",major:"数学",}//不需要指定字段的使用方式stu2:=stu{"Amy",15,"英语"}fmt.Println(stu1,st
令三三
·
2018-07-27 16:39
go学习笔记
go语言学习笔记
-map
理解map是由一组无序的键key值value对集合的内置类型,可以通过键来获取对应的值,map和slices一样,也是引用类型注意:map之间不能使用==操作符来判断创建map语法:map[typeofkey]typeofvaluevarmyMapmap[string]int//nil此时map是零值,不允许向map向添加元素,我们需要使用make函数初始化mapmyMap:=make(map[s
令三三
·
2018-07-26 15:44
go学习笔记
Go语言学习笔记
十三: Map集合
Go语言学习笔记
十三:Map集合Map在每种语言中基本都有,Java中是属于集合类Map,其包括HashMap,TreeMap等。而Python语言直接就属于一种类型,写法上比Java还简单。
kriszhang
·
2018-03-03 18:52
编程语言
Go语言学习笔记
十一: 切片(slice)
Go语言学习笔记
十一:切片(slice)切片这个概念我是从python语言中学到的,当时感觉这个东西真的比较好用。不像java语言写起来就比较繁琐。不过我觉得未来java语法也会支持的。
kriszhang
·
2018-03-03 17:08
编程语言
Go语言学习笔记
一、包1.每个Go程序都是有包组成的,程序从main包开始运行。二、函数1.函数可以接受0个或多个参数,类型在变量名之后,跟C语言和Java不一样。2.如果联系多个形参的类型是相同的,可以省略前面的几个。比如下面的可以这样写funcadd(x,yint)。3.函数返回值可以是多个。funcswap(x,ystring)(string,string){returny,x}未完待续。
Lizzybaby
·
2018-02-20 23:17
Go语言学习笔记
六: 循环语句
Go语言学习笔记
六:循环语句今天学了一个格式化代码的命令:gofmt-wchapter6.gofor循环for循环有3种形式:forinit;condition;increment{}//类似whileforcondition
kriszhang
·
2018-02-09 15:49
编程语言
使用Go像C/C++一样熟练-学习笔记
目的向细节进发数据方法接口为了达成如题的目标,仔细学习和试验了《
Go语言学习笔记
》5,6,7,10数据、接口、方法、反射四章。
dalerkd
·
2017-11-22 12:56
读书笔记
深造之旅
实践
GO语言学习笔记
(一)一些基础常识以及实现生成随机密码小程序
GO语言学习笔记
(一)一些基础常识以及实现生成随机密码小程序之前用nodejs和shell分别实现过生成随机密码的小程序。
FungLeo
·
2017-08-17 11:39
Linux\CentOS
golang
FungLeo的前端笔记
Go语言学习笔记
--- 常量、变量、批量定义与声明、数据类型、类型别名、类型转换
学习笔记根据无闻go语言基础教程整理批量定义常量const(PI=3.14c1=1c2=2c3=3)其中大写的外部可调用,小写的不可调用批量定义变量var(name="n1"age=10)批量声明一般类型type(newTypeinttype1float32type2stringtype3byte)Go基本类型布尔值:bool长度1字节取值范围true,false注意事项:不可用数字代表true或
Johnny丶me
·
2017-07-30 15:25
Golang
Golang
学习总结
go语言学习笔记
之time---Go语言 time时间格式转换
packagemainimport("fmt"//"io""flag""time")funcmain(){heapProfFile:=flag.String("HeapProfFile","logs/heap.20060102150405.prof","HeapProf文件路径(含时间戳模板)")fmt.Println(*heapProfFile)path:=time.Now().Format(*
后打开撒打发了
·
2017-06-29 15:05
go
go语言学习笔记
之time---Go语言 time时间格式转换
packagemainimport("fmt"//"io""flag""time")funcmain(){heapProfFile:=flag.String("HeapProfFile","logs/heap.20060102150405.prof","HeapProf文件路径(含时间戳模板)")fmt.Println(*heapProfFile)path:=time.Now().Format(*
后打开撒打发了
·
2017-06-29 15:05
go
go
time
时间格式转换
go语言time格式转换
Go语言学习笔记
之反射用法详解
本文实例讲述了Go学习笔记之反射用法。分享给大家供大家参考,具体如下:一、类型(Type)反射(reflect)让我们能在运行期探知对象的类型信息和内存结构,这从一定程度上弥(mi)补了静态语言在动态行为上的不足。同时,反射还是实现元编程的重要手段。和C数据结构一样,Go对象头部并没有类型指针,通过其自身是无法在运行期获知任何类型相关信息的。反射操作所需要的全部信息都源自接口变量。接口变量除存储自
phpgo
·
2017-05-30 12:28
Go语言学习笔记
- 包
工用空间编译工具对源码目录有严格的要求,每个工作空间(workspace)必须由bin、pkg、src三个目录组成。packagefolder可在GOPATH环境变量列表中添加多个工作空间,但不能和GOROOT相同。exportGOPATH=$HOME/projects/golib:$HOME/projects/go通常goget使用用第一个工作空间保存下载的第三方库。源文件编码:源码文件必须是U
技术学习
·
2016-08-24 17:44
Go语言学习笔记
- 并发
GoroutineGo在语言层面对并发编程提供支持,采用轻量级线程(协程)实现。只需要在函数调用语句前添加go关键字,就可以创建并发执行单元。开发人员无需了解任何执行细节,调度器会自动将其安排到合适的系统线程上执行。goroutine是一种非常轻量级的实现,可在单个进程里执行成千上万的并发任务。事实上,入口函数main就以goroutine运行。另有与之配套的channel类型,用以实现“以通讯来
技术学习
·
2016-08-24 16:10
Go语言学习笔记
2/2
chap04并发编程1.Go语言支持语言级别轻量级别线程,称之为goroutine,由Go语言运行时runtime管理。如下多线程实例:packagemainimport("fmt";"sync";"runtime")varcounterint=0funcCount(lock*sync.Mutex){lock.Lock()counter++fmt.Println(counter)lock.Unlo
Gunner
·
2016-08-14 14:42
Golang
Go语言学习笔记
1/2
书籍:《Go语言编程》Chap1初识Go语言1.Go语言主要特性:自动垃圾回收,更丰富内置类型,函数多返回值,错误处理,匿名函数和闭包,类型和接口(不支持继承和重载,仅支持组合),并发贬称,反射,语言交互性。2.Go语言的main函数不能带有参数也不能有返回值。Go语言函数定义:func函数名(参数列表)(返回值列表){//函数体}3.编译:gobuildhello.go;编译运行,不产生中间编译
Gunner
·
2016-08-05 22:05
Golang
Go语言学习笔记
8
5.Go语言流程控制方法Go语言在流程控制结构方面有些像C语言,但是在很多方面都与C不同。特点如下:在Go语言中没有do和while循环,只有一个更加广义的for语句。Go语言中的switch语句更加灵活多变。Go语言的switch语句还可以被用于进行类型判断。与for语句类似,Go语言中的if语句和switch语句都可以接受一个可选的初始化子语句。Go语言支持在break语句和continue语
u012855229
·
2016-07-10 06:00
流程控制
switch
for
if
goto
Go语言学习笔记
7
4.Go语言数据的使用4.4类型转换类型转换是把一个类型的值转换成为另一个类型的值。把这个值原来的类型称为源类型,而这个值被转换后的类型称为目标类型。如果T是值x的目标类型,那么相应的类型转换表达式如下:T(x)//x可以是一个表达式,不过这个表达式的结果值只能有一个如果代表目标类型的字面量始于操作符*或<-,后者它是没有结果声明列表的函数类型,那么往往需要用圆括号括起来,以避免歧义的产生。例如:
u012855229
·
2016-07-06 20:00
类型转换
内建函数
Go语言学习笔记
6
4.Go语言数据的使用4.1赋值语句如果值x可以被赋给类型为T的变量,那么它们至少需要满足以下条件中的一个赋值规则:如果值x的类型是T,那么x可以被赋给T类型的变量。如果值x的类型是V,那么V和T应该具有相同的潜在类型,并且它们之中至少有一个是未命名的类型。未命名的类型是指未被署名的数据类型。例如,字面量:struct{ aint bstring }{0,"string"}所代表的值的类型是str
u012855229
·
2016-07-06 17:00
变量
常量
赋值语句
可比性和有序性
Go语言学习笔记
5
3.Go语言数据类型本篇接着
Go语言学习笔记
4讲Go语言数据类型,主要如下:3.7结构体结构体类型既可以包含若干个命名元素(又称字段),又可以与若干个方法相关联。
u012855229
·
2016-07-04 07:00
new
指针
Make
go语言
结构体
Go语言学习笔记
4
3.Go语言数据类型这是接着
Go语言学习笔记
3讲的一篇,还是主要介绍Go语言数据类型。主要如下:3.5函数和方法在Go语言中,函数类型是一等类型,可以把函数当做一个值来传递和使用。
u012855229
·
2016-07-02 19:00
接口
方法
函数
go语言
Go语言学习笔记
3
3.Go语言数据类型其实前面已经涉及到了数据类型的一些知识点。本篇将仔细地讲讲Go语言的数据类型。3.1基本数据类型名称宽度(字节)零值说明bool1false布尔类型,真用常量true表示,假用常量false表示byte10字节类型,可看作uint8的别名类型rune40rune类型,专门存储Unicode编码,可看作uint32的别名类型int/uint-0有符号整数类型/无符号整数类型,宽度
u012855229
·
2016-07-01 09:00
数据类型
go语言
Go语言学习笔记
2
2.Go语言基本词法Go语言的语言符号又称为词法元素,共包括5类:标识符(identifier)、关键字(keyword)、操作符(operator)、分隔符(delimiter)、以及字面量(literal)。一般情况下,空格符、水平制表符、回车符和换行符都会被忽略,除非它们作为多个语言符号之间的分隔符的一部分。在Go语言中不需要显示地插入分号,在必要时,Go语言会自动为代码插入分号以进行语句分
u012855229
·
2016-06-27 21:00
go语言
基本词法
Go语言学习笔记
1
1.Go语言环境搭建及基础知识Go语言官方网站(http://golang.org)代码包文档网站(http://godoc.org)Go语言中文网(http://studygolang.com)Go语言开发包下载路径:go1.6.2.linux-amd64(包含part1和part2两部分,下载后一起解压)http://download.csdn.net/download/u012855229/
u012855229
·
2016-06-27 09:00
go语言
八、Go语言包之strings--
go语言学习笔记
packagemainimport("fmt""unicode""strings")funcmain(){//是否存在某个字符串str:="ahasab"subStr:="a"subAny:="ab"fmt.Println("contains:%t",strings.Contains(str,subStr))fmt.Println("containsAny:%t",strings.Contains
自在逍遥
·
2016-04-29 16:40
GO语言学习
四、golang类型讲解--
go语言学习笔记
擅自使用了七牛大牛们的PPT资料,希望不要怪罪,这里谢谢大牛们的分享。映射map一个”键-值”对关键点:注意并发读写情况,上锁不能对未初始化的map进行写,会抛异常(panic)对于迭代操作,每次结果可能不一致(乱序)varmmap[string]intm["k1"]=7//错误:assignmenttoentryinnilmapm:=make(map[string]int)//初始化成一个空ma
自在逍遥
·
2016-04-05 13:56
GO语言学习
golang
语言
class
迭代
string
go语言学习笔记
(第2章)—流程
GO语言在流程中,添加了fallthrough关键字。1.条件语句条件语句不需要使用括号将条件包含起来无论语句体内有几条语句,花括号{}都是必须存在的左花括号{必须与if或者else处于同一行在if之后,条件语句之前,可以添加变量初始化语句,使用;间隔在有返回值的函数中,不允许将"最终的"return语句包含在if...else...结构中,否则会编译失败。失败原因在于,GO函数无法找到终止该函数
mickelfeng
·
2015-10-27 14:00
上一页
3
4
5
6
7
8
9
10
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他