This is a Scala by Example from the official website.The example of how Scala is used in more detail after tutorial1.Programing with Actors and Message2.Expressions and Simple Functions3.first-class Functions4.Class and Objects5.Case Classes and Pattern Matching6.Generic Types and Methods7.Lists8.for-comprehensions9.Mutable State10.Computing with Streams11.Lazy Values12.Implicit Parameters and Conversions13
Basic content1. Array definitionsDefinition of fixed length, variable array, element addition, deletion, sorting, summation and other common operationsImport Scala.collection.mutable.ArrayBufferimport scala.math.bigdecimal.roundingmode/** * @author Xwolf * @date 2017-04-09 18:23 * @since 1.8 */object Collection {def main (arg:array[string]): Unit ={Multiplearray ()}/** * Array Creation */private def create (): unit={val a = new array[string] (1) A (0) = "Hello" println (A.tobuffer) Val A b =a
public number is Dt_spark, every day will have big data actual combat video release, please continue to study.Liaoliang DT Big Data dream factory Scala all videos, PPT and code in Baidu Cloud disk link:http://pan.baidu.com/share/home?uk=4013289088#category/type=0 Qq-pf-to=pcqq.groupLiaoliang "Scala Beginner's introductory classic video course" http://edu.51cto.com/lesson/id-66538.htmlLiaoliang "
Package Com.leegh.parameterization/*** @author Guohui Li*/Class PersonClass Student extends PersonClass C[+t] (Val args:t)Trait Friend[-t] {def makefriend (Somebody:t)}Object Variance {def makefriendwithyou (S:student, f:friend[student]) {f.makefriend (s)}def main (args:array[string]): Unit = {Val Value:c[person] = new C[student] (new Student)}}Report:This blog description:1. Organize your ideas and improve yourself.2. Be educated in Liaoliang teacher, what to gain, so recommend.3. Blog focus on
In the first two sections, we learned about Scala's objects and associated objects, both of which are used to mean the static members of Java. There are no static fields and static methods in Scala. A static member destroys the complete object-oriented model that Scala supports. However, it is possible to implement class-level operations on Scala through the asso
Package Com.leegh.parameterization/*** @author Guohui Li*/Class Pair[t def bigger = if (First.compareto (second) > 0) First Else second}Class Pair_lower_bound[t] (Val first:t, Val second:t) {def Replacefirst[r;: T] (newfirst:r) = new Pair_lower_bound[r] (Newfirst, second)}Object Type_variables_bounds {def main (args:array[string]): Unit = {Val pair = new pair ("Spark", "Hadoop")println (Pair.bigger)}}Report:This blog description:1. Organize your ideas and improve yourself.2. Be educated in Liaol
First, prefaceThe Scala program uses Unicode's BMP character set (Wiki:bmp character set), which is not currently supported by the Unicode supplement character set. This chapter defines Scala's syntactic analysis from Scala models and XML models. If not specifically mentioned, the default refers to the Scala model and specifies that the characters are ASCII \u000
Scala code in one day (7) and scala code in one dayScala code in one day (7)To better control spark, I recently studied scala language features, mainly reading "quick learning scala" and writing down some codes that I think are useful.
Package examplesclass Angela {// package visibility This specifies that this method
Scala code in one day (9) and scala code in one dayScala code in one day (9)To better control spark, I recently studied scala language features, mainly reading "quick learning scala" and writing down some codes that I think are useful.
Package examplesimport scala. io. sour
sugars that allow you to write code in a concise, refined, elegant way, as you would write a poem. In contrast to imperative-style languages, the amount of code in a functional language that solves the same problem can be reduced to half of the former, and sometimes even to an order of magnitude. So, in a functional language, we can replace the original design pattern in object-oriented programming with a more concise approach. In the practice of pure functional programming, pioneers have preci
The take in list is implemented with Listbuffer:version 2.10.xHowever, in the 2.11.x version, it is not:override def take (n:int): list[A] = if (IsEmpty | | n val h = new::(head, Nil)var t = hvar rest = tailvar i = 1while ({if (rest. isEmpty) return this; i i + = 1val NX = new::(rest. Head, Nil)t.tl = NXT = NXrest = rest. Tail}h}final Case class:: [B] (override Val head:b, private [Scala] var tl:list[b]) extends List[b]declared as VAR allows listbuffe
Final Case class:: [B] (private var hd:b, Private[scala] var tl:list[b]) extends List[b]TL is limited access through private to ensure the immutability of TL, so that in the building of the head element HD different and then the list of the same new list can be directly pointed to the TL, efficient.This ensures both functional programming and efficient creation of new objects.interested friends please pay attention to DT Big Data Dream Factory public
Note: This study originates from: DT Big Data DreamWorks (public number: Dt_spark)1.in the previous section we learned about Scala Hello World, specifically defining a function as follows:650) this.width=650; "src=" http://s3.51cto.com/wyfs02/M02/70/40/wKiom1W1CI_DmfpAAAGAJtFJ734715.jpg "title=" 1.png " alt= "Wkiom1w1ci_dmfpaaagajtfj734715.jpg"/>2.define a function without parameters, as follows:650) this.width=650; "src=" http://s3.51cto.com/wyfs02/M
3, hands on the abstract class in ScalaThe definition of an abstract class requires the use of the abstract keyword:
The above code defines and implements the abstract method, it is important to note that we put the direct running code in the trait subclass of the app, about the inside of the app helps us implement the Main method and manages the code written by the engineer;Here's a look at the use of uninitialized variables in an abstract class:
4, hands-on trait in ScalaTrait
it's so ....Come back at night suddenly saw into the huge manuscript, can't help to the three ye, and then nothing did 23 o'clock ... 85th: The powerful expressive battle of the for expression in ScalaGoal:Comparison and contact of higher order functions (FLATMAP,MAP) and for loops (initial)Gains:The back of the For loop is actually called map, but it is more likely to be programmed with a for loop if the statement is concise and expressive two.MORE:Run the instance code over and try it out.----
Package Com.leegh.parameterization/*** @author Guohui Li*/Object Type_contraints {def main (args:array[string]): Unit = {def Rocky[t] (i:t) (implicit ev:t println ("Life is too short,you need spark!")}Rocky ("Spark")}}Report:This blog description:1. Organize your ideas and improve yourself.2. Be educated in Liaoliang teacher, what to gain, so recommend.3. Blog focus on practice, superfluous words are not much to say, are doing technology.4. Information from DT Big Data Dream Factory public accou
650) this.width=650; "src=" Http://s3.51cto.com/wyfs02/M01/6F/91/wKioL1WhEYHR0V55AAi8dfKDnAg782.jpg "title=" 002- Scala function definition, Process Control, exception handling get started in combat. png "alt=" wkiol1wheyhr0v55aai8dfkdnag782.jpg "/>002-scala function definition, Process Control, exception handling getting started combatScalafunction Definitionstatement end no semicolondefining an parameter
3, hands-on generics in Scalageneric generic classes and generic methods, that is, when we instantiate a class or invoke a method, you can specify its type, because Scala generics and Java generics are consistent and are not mentioned here. 4, hands on. Implicit conversions, implicit parameters, implicit classes in Scalaimplicit conversion is one of the key points that many people learn about Scala, which i
Scala code in one day (5) and scala code in one dayScala code in one day (5)To better control spark, I recently studied scala language features, mainly reading "quick learning scala" and writing down some codes that I think are useful.
Package examplesclass Person {val publicVal = 1 // automatically generate getter var
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.