Scala Beginner's intermediate-Advanced Classic (66th: Scala concurrent programming experience and its application in Spark source code) content introduction and video link2015-07-24DT Big Data Dream FactoryFrom tomorrow onwards, be a diligent person.Watch videos, videos, share videosDT Big Data Dream Factory-scala--Advanced Classic: 66th: The first experience of
Scala is famous recently, but it is really so good. What I see is nothing. Scala's fame masks its shortcomings, so many people do not see its shortcomings. Although it is a functional programming language, it gives me the overall feeling of confusion and inconsistency, to be different, do you have to be different from other languages to show your excellence? You know, Java has been tested for more than 20 years. Isn't it worth learning from? Are you s
We talked about getting started with Scala, but after all, it's not like scripting language, and Scala is talking about replacing Java, so we'll see how he grabs the Java position.A common editor for Scala, see below:
Eclipse (using one of the shoddy and unstable Scala plugins)
Emacs
IntelliJ (basicall
In this Martin and two other pattern matching experts ' papers, there are several ways to implement pattern matching, and Scala chooses which way to implement it.Http://lampwww.epfl.ch/~emir/written/MatchingObjectsWithPatterns-TR.pdfI quoted some of the descriptions inside.In object-oriented programs, data is organized into class-level classesThe problem with object-oriented language in pattern matching is how to detect this level from the outside.The
The main contents of this article are as follows:
Variables and invariants
Functions and procedures
Parameters of the function
Semicolon
1. Variables and invariants 1.1. VariablesScala's variables are divided into two types, Var and val. var, or variable, is similar to the variables we touch in other languages such as Java, and Val, is value, similar to the non-assignable constants we use in other languages, or the final variable.Why this difference, this is because in
Scala briefly -- class and object, scalaClass
In scala, classes are not declared as public. The source file can contain multiple classes, all of which have common visibility. The getter and setter methods are provided for each field, which are called Field Names and field name_, respectively, and can be customized. Note: 1) if the field is private, getter and setter are also private. 2) if the field is val
is already available in Scala. Scala> BigInt (5= 12. What is the value of an empty block expression {}? What is the type? Scala> print ({}) () Scala> Def test={}test:unitscala> var kong == ()The type is unit and the value is ().3. It is pointed out that in Scala, the assign
Scala: Operator and parser, scala operator ParsingThe names of variables, functions, and classes are collectively referred to as identifiers. The backquotes can contain almost any character sequence.In scala,-Operator ending with Colon-Value assignment operatorAll operators are left-bound.
The unapply method accepts an object and then takes the value from it, us
The trait definition in Scala includes a collection of fields, behaviors (methods/functions/actions), and some non-implemented functional interfaces that can be easily extended or mixed into existing classes or abstract classes.Scala's trait (trait) is a very useful feature that can be better abstracted in the design. The program is more extensible by making programs more focused on their features and better splitting the program into multiple trait m
001-scala development environment Construction and HelloWorld parsingScala functional programming and object-oriented language functional programming excel at numerical computing object-oriented organization of large-scale engineering and project and team collaboration Scala will be the next great language? Spark is written in the Scala language, and Hadoop is wr
Scala: annotation and scala AnnotationAnnotations can be used to add information to various entries of a program. They are inserted into the code so that tools can process tags for them. You can use java annotations for scala classes or scala-specific annotations.In scala, a
Java programmers, why do you need to pay attention to Scala, Java programmers, and Scala?
Let's take a look at Martin Odersky's design goals for Scala. What aspects should be taken into account in the process of creating a language that surpasses Java?
Concession
Frank Sommers: You mentioned earlier that you want to create a language that exists in the Java
Let's look at a loop in Java: for (int i = 1; i ) { + ",");}There is no doubt that Scala can make this loop more concise. According to the previous section, it is not necessary to display the type of the specified variable i, and we do not even need to declare the variable. The next output statement can be more concise, and in Scala you can use the println () method to output a string directly. Finall
Package Com.leegh.parameterizationImport Com.leegh.parameterization.Compound_Type/*** @author Guohui Li*/Trait Compound_type1;Trait Compound_type2;Class Compound_type extends Compound_type1 with compound_type2Object Compound_type {def compound_type (x:compound_type1 with compound_type2) = {println ("Compound Type in Global Method")}def main (args:array[string]): Unit = {Compound_type (new compound_type1 with Compound_type2)Object Compound_type_object extends Compound_type1 with compound_type2Com
Package Com.leegh.parameterization/*** @author Guohui Li*/Class Pair_ordering[t:ordering] (Val first:t, Val second:t) {def bigger (implicit ordered:ordering[t]) = {if (Ordered.compare (first, second) > 0) First Else second}}Object Context_bounds {def main (args:array[string]): Unit = {Val pair = new pair_ordering ("Spark", "Hadoop")println (Pair.bigger)Val pairint = new Pair_ordering (3, 5)println (Pairint.bigger)}}Report:This blog description:1. Organize your ideas and improve yourself.2. Be ed
We do spark development using a lot of spark's higher-order functions so today I'm using scala higher-order functions on Linux ServicesDeclares a list collection:The package containing the list is already automatically introduced by the predefined, so there is no need to introduce a package here, directly using the list instantiation object, actually using the list object object's Apply methodWe use the map function to multiply each value in the list
Sublime3 Compile run Scala program
Using Sublime3 plus repl to invoke the command line, it is still convenient to run some code snippets. But direct compilation runs Scala programs, you need to add some settings.
1. Configuration:
Select Tools->build system->new build system and replace with:
{"cmd": ["D:\\scala\\bin\\scala.bat", "$file"]}
Save file:scala.
Package Com.leegh.implicits/*** @author Guohui Li*/Object Context_implicits {Implicit val default:string = "Java"}Object Param {def print (content:string) (implicit language:string) {println (language + ":" + content)}}Object Context_parameters {def main (args:array[string]): Unit = {Param.print ("Spark") ("Scala")Import Context_implicits._Param.print ("Hadoop")}}Report:This blog description:1. Organize your ideas and improve yourself.2. Be educated i
We know that everything in Scala is an object, a function is an object, a number is an object, and it's a more object-oriented language than Java.Simple classes that define ScalaClass Point(val x:int, val y:int) The previous line of code is the definition of a Scala class:
The first is the keyword class
followed by the class name point
The parentheses after the class name are the const
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.