
Scala
追梦菜鸟
IT男,乐活族,爱旅游、运动、聊天,爱看电视剧
展开
-
Scala内部类
Scala内部类是从属于外部类对象实例的。/* * 第一种方式 * 在内部类通过【外部类.this.成员名称】 访问外部类成员 */class OuterClass(val name:String){ class InnerClass(val name:String){ def info=println("Outer name:"+OuterClass.this.nam原创 2016-07-30 11:05:23 · 429 阅读 · 0 评论 -
Scala数组操作
//操作实例object ArrayOperation { def main(args: Array[String]) = { val c = Array(2, 3, 5, 7, 11) for (i <- 0 until c.length) println(i + ":" + c(i)) val result = for (elem <- c) yi原创 2016-07-31 11:48:15 · 368 阅读 · 0 评论 -
Case Class
一、Case Class简介Case Class一般被翻译成样例类,它是一种特殊的类,能够被优化以用于模式匹配,下面的代码定义了一个样例类:当一个类被声名为case class的时候,scala会帮助我们做下面几件事情: 1 构造器中的参数如果不被声明为var的话,它默认的话是val类型的,但一般不推荐将构造器中的参数声明为var 2 自动创建伴生对象,同时在里面给我们实现原创 2016-08-01 15:32:51 · 1214 阅读 · 0 评论 -
Scala集合操作—List
Scala常用操作:http://www.yiibai.com/scala/scala_lists.html Scala中列表是非常类似于数组,这意味着,一个列表的所有元素都具有相同的类型,但有两个重要的区别。首先,列表是不可变的,这意味着一个列表的元素可以不被分配来改变(在官方文档中List是immutable的,所以对List的所谓增上改查都是产生新的对象,并非在原来的集合上改原创 2016-10-11 18:17:46 · 3972 阅读 · 0 评论 -
用Option[T] 来避免NullPointerException
Java 里的 Null Pointer Exception写过一阵子的Java后, 应该会对NullPointerException (NPE)这种东西很熟悉,基本上会碰到这种异常,就是你有一个变量是 null,但你却调用了它的方法,或是取某个的值。举例而言,下面的 Java 代码就会抛出NPE异常:例1:String s1 = null;System.out.println("原创 2016-10-11 19:01:54 · 1319 阅读 · 0 评论 -
Scala集合操作—Set
Scala集合Set常用操作:http://www.yiibai.com/scala/scala_sets.htmlScala集合为相同类型的配对的不同元素的集合。换句话说,集合是不包含重复元素的集合。有两种集合,不可改变的和可变的。可变和不可变的对象之间的区别在于,当一个对象是不可变的,对象本身不能被改变。默认情况下,Scala中使用不可变的集。如果想使用可变集,必须明确地导原创 2016-10-13 23:45:53 · 7208 阅读 · 0 评论 -
Scala集合操作—Map
原文链接:http://www.yiibai.com/scala/scala_maps.htmlScala中的映射是键/值对的集合。任何值可以根据它的键进行检索。键是在映射唯一的,但值不一定是唯一的。映射也被称为哈希表。有两种类型的映射,不可变以及可变的。可变和不可变的对象之间的区别在于,当一个对象是不可变的,对象本身不能被改变。默认情况下,Scala中使用不可变的映射。如原创 2016-11-04 23:51:35 · 9376 阅读 · 0 评论 -
Scala集合操作—数组
Java和C++程序员通常会选用数组或近似的结构(数组列表或向量)来收集一组元素。在scala中,我们的选择更多,本篇的要点包括: 1.若长度固定则使用Array,若长度可能有变化则使用ArrayBuffer 2.提供初始值时不能使用new 3.用(i)来访问元素,i表示元素下标 4.用for(elem 5.用for(elem原创 2016-10-27 10:56:46 · 577 阅读 · 0 评论 -
样例类—case详解
概述:case类在模式匹配和actor中经常使用到,当一个类被定义成为case类后,Scala会自动帮你创建一个伴生对象并帮你实现了一系列方法且带来了不少好处,如下:1.实现了apply方法,意味着你不需要使用new关键字就能创建该类对象scala> case class People(name:String,age:Int)defined class Peoplescala>原创 2016-12-12 11:12:15 · 1647 阅读 · 0 评论