摘要: 切片的遍历: 切片的遍历和数组一样,也有两种方式 1)for 循环常规方式遍历 2)for-range 结构遍历切片 两种方式都在下面的代码里: 案例演示: func main() { //使用常规的for循环遍历切片 var arr [5]int = [...]int{10,20,30,40,50 阅读全文
posted @ 2019-08-14 23:57 我是一只忙碌的小青蛙 阅读(190) 评论(0) 推荐(0) 编辑
摘要: 数组复杂使用--数组反转 要求:随机生成五个数,并将其反转打印 通过找规律反转 package mainimport ( "fmt" "math/rand" "time") func main() { //思路 //1.随机生成五个数, rand.Intn() 函数 //2.当我们得到随机数后,就放 阅读全文
posted @ 2019-08-14 23:46 我是一只忙碌的小青蛙 阅读(326) 评论(0) 推荐(0) 编辑
摘要: 数组的遍历: 方式1-常规遍历: 前面已经讲过了,不在赘述。 方式2-for-range结构遍历 这是Go语言一种独有的结构,可以用来遍历访问数组的元素 基本语法:for inde, value := range array01 { ...} 说明: 1)第一个返回值 index 是数组的下标 2) 阅读全文
posted @ 2019-08-14 23:32 我是一只忙碌的小青蛙 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 为什么需要数组? 问题: 一个养鸡场有6只鸡,它们的体重分别是3kg, 5kg, 1kg, 3.4kg, 2kg, 50kg。请问这六只鸡的总体重是多少?平均体重是多少?请你编写一个程序。 使用传统方法解决。 func main() { //分析思路:定义六个变量,分别表示六只鸡的,然后求出和,然后 阅读全文
posted @ 2019-08-14 23:17 我是一只忙碌的小青蛙 阅读(242) 评论(0) 推荐(0) 编辑
摘要: 错误处理机制: 先看一段代码:看看输出什么? package mainimport "fmt" func test() { num1 := 10 num2 := 0 res := num1 / num2 fmt.Println("res=",res)} func main() { test() fm 阅读全文
posted @ 2019-08-14 23:07 我是一只忙碌的小青蛙 阅读(1393) 评论(0) 推荐(0) 编辑
摘要: Golang设计者为了编程方便,提供了一些函数,这些函数可以直接使用,我们称为Go的内置函数。文档:https://studygolang.com/pkgdoc -> builtin 1)len:用来求长度,比如string、array、slice、map、channel 2)new:用来分配内存, 阅读全文
posted @ 2019-08-14 22:57 我是一只忙碌的小青蛙 阅读(124) 评论(0) 推荐(0) 编辑
摘要: 在编程中,程序员会经常使用到日期相关的函数,比如:统计某段代码执行话费的时间等等。 1)时间和日期相关函数,需要导入time包 2)time.Time 类型,用于表示时间 3)获取到当前时间的方法:now := time.Now() //now 的类型就是time.Time func main() 阅读全文
posted @ 2019-08-14 22:54 我是一只忙碌的小青蛙 阅读(415) 评论(0) 推荐(0) 编辑
摘要: 字符串中常用的函数: 字符串在我们程序开发中,使用的非常多的,常用的函数我们需要掌握: 1)统计字符串的长度,按字节len(str) func main() { //golang的编码统一为UTF-8的(ascii码的字符(数字和字母) 占一个字节,汉字占用3个字节 ) str := "hello北 阅读全文
posted @ 2019-08-14 22:46 我是一只忙碌的小青蛙 阅读(279) 评论(0) 推荐(0) 编辑
摘要: 函数参数的传递方式: 基本介绍: 我们在讲解函数注意事项和使用细节时,已经讲过值类型和引用类型了,这里我们在系统总结一下,因为这是重难点,值类型参数默认就是值传递,而引用类型参数默认就是引用传递。 两种传递方式: 1)值传递 2)引用传递 其实,不管是值传递还是引用传递,传递给函数的都是变量的副本, 阅读全文
posted @ 2019-08-14 22:37 我是一只忙碌的小青蛙 阅读(597) 评论(0) 推荐(0) 编辑
摘要: 为什么需要defer? 在函数中,程序员经常需要创建资源(比如:数据库连接、文件句柄、锁等),为了在函数执行完毕后,及时的释放资源,Go的设计者提供defer (延时机制)。 快速入门案例: func sum(n1 int, n2 int) int { //当执行到defer时,暂时不执行,会将de 阅读全文
posted @ 2019-08-14 22:28 我是一只忙碌的小青蛙 阅读(390) 评论(0) 推荐(0) 编辑
摘要: 基本介绍: 闭包就是一个函数和与其相关的引用环境组合的一个整体(实体) 案例演示: package mainimport ( "fmt") //累加器func AddUpper() func (int) int { var n int = 10 return func (x int) int { n 阅读全文
posted @ 2019-08-14 22:21 我是一只忙碌的小青蛙 阅读(155) 评论(0) 推荐(0) 编辑
摘要: init函数: 基本介绍: 每一个源文件都可以包含一个init函数,该函数会在main函数执行前,被Go运行框架调用,也就是说init会在main函数前被调用。 案例说明: //init函数,通常可以在init函数中完成初始化工作func init() { fmt.Println("init().. 阅读全文
posted @ 2019-08-14 22:12 我是一只忙碌的小青蛙 阅读(262) 评论(0) 推荐(0) 编辑
摘要: 模式匹配 Java:switch case 值 对一个值进行条件判断,返回针对不同的条件进行不同的处理 Scala:match case 值/类型/集合 基本语法:变量 match { case value1 => 代码1 case value2 => 代码2 ..... case _ => 代码N 阅读全文
posted @ 2019-08-14 21:57 我是一只忙碌的小青蛙 阅读(275) 评论(0) 推荐(0) 编辑
摘要: Array: 定长数组 变长数组 +=/++=/insert 定长数组:object ArrayApp extends App{ val a = new Array[string](5) a.length //查看数组长度 a(1) = "hello" //赋值,下标从0开始 val b = Arr 阅读全文
posted @ 2019-08-14 20:05 我是一只忙碌的小青蛙 阅读(442) 评论(0) 推荐(0) 编辑
摘要: 面向对象编程OOP: Scala vs Java 都有这三特性 封装:把属性、方法封装到类中 Person: int id, String name, Date birthday.... 需要getter/setter eat、sleep.... 继承:父类和子类之间的关系 override重写 U 阅读全文
posted @ 2019-08-14 19:52 我是一只忙碌的小青蛙 阅读(368) 评论(0) 推荐(0) 编辑
摘要: 函数/方法的定义 def function_name(x:Int, y:Int):Int = { // 括号内的叫做方法体 //Java: return ""; //Scala: 方法体的最后一行作为返回值,不需要return} 例子:def add(x:Int, y:Int):Int = { x 阅读全文
posted @ 2019-08-14 19:37 我是一只忙碌的小青蛙 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 为什么要学习Scala 为了更好的掌握Spark!!! 优雅:API 开发速度快: 整合: 值和变量 val: final 赋值以后不能改变的,相当于java的final val 值名称:类型 = xxx val name:String = "Arsenal" //不可修改var: var 变量名称 阅读全文
posted @ 2019-08-14 19:27 我是一只忙碌的小青蛙 阅读(223) 评论(0) 推荐(0) 编辑