博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
scala学习——(1)scala基础(上)
阅读量:6927 次
发布时间:2019-06-27

本文共 1875 字,大约阅读时间需要 6 分钟。

  • scala> val x = 1 x: Int = 1

 

一、值与变量

  • 值(val):赋值后不可变

   val值名称:类型 = XXX

  • 变量(var):赋值后可以改变

    var变量名称:类型 = XXX

scala> val x : Int = 1x: Int = 1
scala> x = 2
:12: error: reassignment to val x = 2 ^
scala>  var x : Int = 1x: Int = 1scala> x = 2x: Int = 2
scala> val x = 1x: Int = 1

scala> var x = 1

x: Int = 1

 二、常用的类型:

  •  Byte
  • char
  • Short
  • Int
  • Long
  • Float
  • Double
  • Booleal

并无基本类型与包装类型之分

三、方法定义

def 方法名(参数名:参数类型):返回类型={

//block内最后一行为返回值

}

注:当返回值为unit时,可以定义为:

def 方法名(参数名:参数类型){

}

 

package week1/***Create by wucy on 2017/2/8*/object WeekOne{  def add(x:Int,y:Int): Int = {    x+y  }    def add() = {    println("say hello")  }    def main(args:Array[String]){    println(add(1,2))    add()  }}

 方法的注意:

  •  没有参数的方法可以不带圆括号访问
  • Scala没有静态方法,通过object来实现
scala> 1.to(10)res0: scala.collection.immutable.Range.Inclusive = Range 1 to 10scala> 1 to 10res1: scala.collection.immutable.Range.Inclusive = Range 1 to 10
  • 条件表达式(if)
  • 循环表达式(for,while,to,until,Range没有coninue与break)
  • 语句终止(分行写时可以不用分号)
scala> if (x>0) 1 else -1res2: Int = 1scala> val a = if(x>0) 1 else -1a: Int = 1
scala> 1 to 10res3: scala.collection.immutable.Range.Inclusive = Range 1 to 10scala> 1 until 10res4: scala.collection.immutable.Range = Range 1 until 10
scala> Range(1,10)res5: scala.collection.immutable.Range = Range 1 until 10scala> Range(1,10,2)res6: scala.collection.immutable.Range = inexact Range 1 until 10 by 2
def main(args:Array[String]){    //println(add(1,2))    //add()    for (i<- 1 to 10){      println(i)    }  }
scala> for( i<- 1 until 10) println(i)123456789
scala> for( i<- 1 until 10 if i % 2 ==0 ) println(i)2468
  • Lazy value(懒加载)

  lazy val val_name = val_value

  用到时才会去初始化

 

scala> val a = 1a: Int = 1scala> lazy val a = 1a: Int = 
scala> ares9: Int = 1
  • 默认参数
  • 带名参数(赋值顺序可以定义时顺序不一致)
  • 边长参数(:_*)

 四、异常处理

  

资料来源:小象学院 陈 超  仅供学习研究

转载于:https://www.cnblogs.com/wuchuanying/p/6254042.html

你可能感兴趣的文章
统计局:居民一天中自由支配活动平均用时3小时56分钟
查看>>
分布式事务实战——常用解决方案的实现
查看>>
春运首日:“武状元”为动车组“把脉问诊”
查看>>
特蕾莎·梅政府挺过不信任动议 21日将交脱欧B计划
查看>>
美“龙”号货运飞船结束第16次补给任务 将返回地球
查看>>
人工智能会是发展中国家的下一个盖世英雄吗?
查看>>
从零单排学Redis【黄金】
查看>>
NG2.4.10升级NG4正式版[正式项目]:修正AOT打包报错的一些问题
查看>>
jQuery实现左侧分类菜单
查看>>
如何用一行代码, 让老板开除你?
查看>>
css实现多行文字截断
查看>>
VsCode读取项目文件的Eslint规则 保存时自动修复格式错误
查看>>
Facebook 之行,新的远方
查看>>
玩转iOS开发:iOS 11 新特性《高级拖放》
查看>>
活用 git apply 合入 patch 补丁
查看>>
悄悄掀起 WebAssembly 的神秘面纱
查看>>
OC多线程
查看>>
记一次对webpack打包后代码的失败探究
查看>>
论CTOR添加到11月BCH协议升级
查看>>
RxJava源码分析及版本对比(二)——2.x版本基本使用分析与对比1.x版本
查看>>