Scala
文章平均质量分 63
哈天奇不奇
这个作者很懒,什么都没留下…
展开
-
Scala — 控制结构和函数
输入输出package org.fool.scalaimport scala.io.StdInobject AppTest { def main(args: Array[String]): Unit = { val name = StdIn.readLine("Your name: ") println(name) print("Yo...原创 2016-04-26 13:25:51 · 85 阅读 · 0 评论 -
Scala Parameterized Types
原创转载请注明出处:http://agilestyle.iteye.com/blog/2333316 参数化类型We consider it a good idea to let Scala infer types whenever possible. It tends to make the code cleaner and easier to read. Sometimes, ...原创 2016-10-26 14:14:52 · 108 阅读 · 0 评论 -
Scala Functions as Objects
原创转载请注明出处:http://agilestyle.iteye.com/blog/2333597 先看一个简答的例子package org.fool.scala.functionobjectsobject DisplayVector extends App { /* Version 1 - DisplayVector */ def show(...原创 2016-10-27 10:58:00 · 74 阅读 · 0 评论 -
Scala Map&Reduce
原创转载请注明出处:http://agilestyle.iteye.com/blog/2333623 package org.fool.scala.mapreduceobject SimpleMapReduce extends App { val v = Vector(1, 2, 3, 4, 5) val result1 = v.map(n => n + 1)...原创 2016-10-27 13:17:45 · 89 阅读 · 0 评论 -
Scala Comprehensions
原创转载请注明出处:http://agilestyle.iteye.com/blog/2333647 for和if的组合称为for推导,简称为推导。先看一个简单的例子:package org.fool.scala.comprehensionobject ComprehensionTest extends App { def evenGT5(v: Vector[Int]...原创 2016-10-27 14:31:13 · 85 阅读 · 0 评论 -
Scala Automatic String Conversion
原创转载请注明出处:http://agilestyle.iteye.com/blog/2333708 创建一个case类时会自动创建toString方法,并且nice输出创建一个非Case类时也会自动创建toString方法,但是ugly输出为对象在JVM中的内存的HashCode要得到更有用的结果,就得override自己的toString方法package org.fo...原创 2016-10-27 16:53:11 · 77 阅读 · 0 评论 -
Scala Companion Objects
原创转载请注明出处:http://agilestyle.iteye.com/blog/2333761 Scala跟踪感兴趣的对象的方式是默默地传递一个指向该对象的引用,这个引用可以用关键字this获取。可以显示地访问this,但是大多数时候并不需要访问它。ObjectsAndMethods.scalapackage org.fool.scala.companionobjects...原创 2016-10-27 21:23:46 · 177 阅读 · 0 评论 -
Scala Inheritance
原创转载请注明出处:http://agilestyle.iteye.com/blog/2333901 同Java类似,使用extends关键字实现继承package org.fool.scala.inheritanceclass Person { val height = 180 val weight = 160}class Teacher exte...原创 2016-10-28 11:00:13 · 108 阅读 · 0 评论 -
Scala Enumeration
原创转载请注明出处:http://agilestyle.iteye.com/blog/2334476 Scala中创建一个枚举类型,通常需要定义一个object继承Enumeration抽象类package org.fool.scala.enumerationobject Level extends Enumeration { type Level = Value...原创 2016-10-31 17:00:11 · 231 阅读 · 0 评论 -
Scala Abstract Classes
原创转载请注明出处:http://agilestyle.iteye.com/blog/2334485 Scala中的抽象类就跟Java一样,用abstract关键字来描述抽象类,抽象类包含了未定义的方法或未初始化的域。package org.fool.scala.abstractclassesabstract class Animal { def templateMe...原创 2016-10-31 17:23:29 · 106 阅读 · 0 评论 -
Scala Traits
原创转载请注明出处:http://agilestyle.iteye.com/blog/2334648 Scala中的trait,相当于Java中interface,支持多种继承,但是语法还是有些差异的。使用trait关键字定义特征,将多个特征组合到一个类中,需要以extends关键字开头,然后使用with关键字添加额外的特征package org.fool.scala.trai...原创 2016-11-01 14:13:13 · 108 阅读 · 0 评论 -
Scala Polymorphism
原创转载请注明出处:http://agilestyle.iteye.com/blog/2334855 这里看一个《Scala编程思想》中提供的一个多态示例,个人认为相当具有学习意义Name.scalapackage org.fool.scala.utilimport scala.reflect.runtime.currentMirrortrait Name {...原创 2016-11-02 14:07:52 · 122 阅读 · 0 评论 -
Scala Composition
原创转载请注明出处:http://agilestyle.iteye.com/blog/2334870 食物与厨具具有存储、烹饪、清洗的能力,表示成一个“has-a”的关系厨房和房间,为了突出厨房的“房间性”,表示成一个“is-a”的关系记住:Prefer composition to inheritancepackage org.fool.scala.composition...原创 2016-11-02 14:40:24 · 98 阅读 · 0 评论 -
Scala Tagging Traits & Case Objects
原创转载请注明出处:http://agilestyle.iteye.com/blog/2334895 标记特征是一种将类或对象组织到一起的方式package org.fool.scala.traitssealed trait Animalcase object Panda extends Animalcase object Tiger extends Ani...原创 2016-11-02 15:35:11 · 81 阅读 · 0 评论 -
Scala String Interpolation
原创转载请注明出处:http://agilestyle.iteye.com/blog/2333300 利用字符创插值,你创建的字符串就可以包含格式化的值。在字符串的前面放置一个s,在你想让Scala插值的标识符之前放置一个$package org.fool.scala.stringscase class Sky(color: String)object Stri...原创 2016-10-26 13:02:26 · 114 阅读 · 0 评论 -
Scala Case Classes
原创转载请注明出处:http://agilestyle.iteye.com/blog/2333272 定义一个case类:case class TypeName(arg1:Type, arg2:Type, ...)case类会自动将所有类参数都创建为val。如果需要某个类参数成为var,那么就在该参数前添加一个var。与常规类不同,有了case类,我们在创建对象时就不必...原创 2016-10-26 10:59:07 · 83 阅读 · 0 评论 -
Scala Constructors and Auxiliary Constructors
原创转载请注明出处:http://agilestyle.iteye.com/blog/2333245 ConstructorsThe constructor is the code that "constructs" a new object. The constructor is the combined effect of the class argument list - i...原创 2016-10-26 09:44:19 · 100 阅读 · 0 评论 -
Scala Hello World
原创转载请注明出处:http://agilestyle.iteye.com/blog/2331800 HelloScala.scala package org.fool.scala.helloworldobject HelloScala { def max(x: Int, y: Int): Int = { if (x > y) x else ...原创 2016-10-20 11:52:53 · 137 阅读 · 0 评论 -
Scala Array
原创转载请注明出处:http://agilestyle.iteye.com/blog/2331948 ScalaArray.scalapackage org.fool.scala.basicobject ScalaArray { def printArray(args: Array[String]) = args.foreach(print) def mai...原创 2016-10-20 17:28:05 · 77 阅读 · 0 评论 -
Scala List
原创转载请注明出处:http://agilestyle.iteye.com/blog/2331949 ScalaList.scalapackage org.fool.scala.basicobject ScalaList { def main(args: Array[String]): Unit = { val list1 = List(1, 2, 3)...原创 2016-10-20 17:33:17 · 74 阅读 · 0 评论 -
Scala Tuple
原创转载请注明出处:http://agilestyle.iteye.com/blog/2331950 ScalaTuple.scalapackage org.fool.scala.basicobject ScalaTuple { def main(args: Array[String]): Unit = { val pair = (99, "Scala")...原创 2016-10-20 17:33:56 · 104 阅读 · 0 评论 -
Scala Set
原创转载请注明出处:http://agilestyle.iteye.com/blog/2332524 Class hierarchy for Scala sets package org.fool.scala.basicimport scala.collection.mutableobject ScalaSet { def main(args: Arr...原创 2016-10-24 09:49:58 · 74 阅读 · 0 评论 -
Scala Map
原创转载请注明出处:http://agilestyle.iteye.com/blog/2332525 Class hierarchy for Scala maps package org.fool.scala.basicimport scala.collection.mutableobject ScalaMap { def main(args: Arr...原创 2016-10-24 09:58:47 · 84 阅读 · 0 评论 -
Scala File
原创转载请注明出处:http://agilestyle.iteye.com/blog/2332751 package org.fool.scala.basicimport scala.io.Sourceobject ScalaFile { def main(args: Array[String]): Unit = { val file = Sourc...原创 2016-10-24 12:03:31 · 122 阅读 · 0 评论 -
Scala For
原创转载请注明出处:http://agilestyle.iteye.com/blog/2333012 package org.fool.scala.basicobject ScalaFor extends App { var result = "" for (i <- 0 to 9) result += i + " " // 0 1 2 3 4...原创 2016-10-25 11:53:36 · 81 阅读 · 0 评论 -
Scala Print Args
原创转载请注明出处:http://agilestyle.iteye.com/blog/2333013 package org.fool.scala.basicobject ScalaPrintArgs { def formatArgs(args: Array[Any]) = args.mkString("\n") def main(args: Array[Str...原创 2016-10-25 11:58:14 · 171 阅读 · 0 评论 -
Scala Vector
原创转载请注明住处:http://agilestyle.iteye.com/blog/2333015 package org.fool.scala.basicobject ScalaVector extends App { val v = Vector(1, 3, 5, 7, 9) // Vector(1, 3, 5, 7, 9) println(v) ...原创 2016-10-25 12:15:01 · 769 阅读 · 0 评论 -
Scala Pattern Matching
原创转载请注明出处:http://agilestyle.iteye.com/blog/2333026 基于值的模式匹配 A match expression compares a value against a selection of possibilities. All match expressions begin with the value you want to ...原创 2016-10-25 13:48:57 · 105 阅读 · 0 评论 -
Scala class and arguments
原创转载请注明出处:http://agilestyle.iteye.com/blog/2333082 Classpackage org.fool.scala.classesclass Giraffeclass Bearclass Hippoobject Animals extends App { val giraffe1 = new Giraf...原创 2016-10-25 15:07:47 · 100 阅读 · 0 评论 -
Scala Overloading
原创转载请注明出处:http://agilestyle.iteye.com/blog/2333242 The term overload refers to the name of a method: You use the same name (“overload” that name) for different methods as long as the argument li...原创 2016-10-26 09:33:03 · 97 阅读 · 0 评论 -
Scala High-Order Methods
原创转载请注明出处:http://agilestyle.iteye.com/blog/2335327 mapThe map method of a Scala collection applies its input function to all the elements in the collection andreturns another collection. The...原创 2016-11-04 14:24:36 · 96 阅读 · 0 评论