O melhor tutorial Scala gramática básica em 2024. Neste tutorial você pode aprender O primeiro programa Scala,forma de roteiro,A sintaxe básica,identificadores,palavras-chave Scala,comentário Scala,As linhas em branco e espaços,nova linha,pacote Scala,
Se você é um programador Java antes, e aprender os conceitos básicos da linguagem Java, de modo que você pode rapidamente aprender a gramática básica Scala.
Scala e Java a maior diferença é: Scala ponto e vírgula no final da instrução; é opcional.
Podemos pensar em programa Scala é uma coleção de objetos por cada chamada de método para implementar mensagens. Em seguida, vêm a compreender, a classe, o conceito de objetos, métodos, variáveis de instância:
Objetos - objetos têm propriedades e comportamentos.Por exemplo: Um cão-como atributos: cor, nome, comportamento: chamada, correr, comer e assim por diante. Objeto é uma instância de uma classe.
Class - classe é um objeto abstrato, e o objeto é uma instância específica de uma classe.
Método - o método descrito no acto de base, uma classe pode conter vários métodos.
Fields - Cada objeto tem seu próprio conjunto de variáveis de instância, ou seja, campos.Propriedades do objeto através da atribuição de campo a ser criado.
programação interativa não precisa criar um arquivo de script, você pode chamar o seguinte comando:
$ scala Welcome to Scala version 2.11.7 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_31). Type in expressions to have them evaluated. Type :help for more information. scala> 1 + 1 res0: Int = 2 scala> println("Hello World!") Hello World! scala>
Nós também pode criar um arquivo HelloWorld.scala para executar código, código HelloWorld.scala da seguinte forma:
object HelloWorld { /* 这是我的第一个 Scala 程序 * 以下程序将输出'Hello World!' */ def main(args: Array[String]) { println("Hello, world!") // 输出 Hello World } }
Em seguida, usamos o comando scalac para compilá-lo:
$ scalac HelloWorld.scala $ ls HelloWorld$.class HelloWorld.scala HelloWorld.class
Após a compilação, podemos ver os diretórios criados sob arquivo HelloWorld.class que podem rodar em Java Virtual Machine (JVM) diante.
Após a compilação, podemos usar o seguinte comando para executar o programa:
$ scala HelloWorld Hello, world!exemplos online >>
Scala sintaxe básica, observe o seguinte:
sensível ao caso - Scala é sensível a maiúsculas, o que significa que o logo Olá, olá e têm significados diferentes em Scala.
nome da classe - para todo o nome da classe primeira letra deve ser maiúscula.
Se você precisa usar algumas palavras para constituir um nome de classe, a primeira letra de cada palavra em maiúsculas.
Exemplo: MyFirstScalaClass classe
nome do método - a primeira letra de todos os métodos de nomes em minúsculas.
Se várias palavras são usados para constituir o nome do método, a primeira letra de cada palavra deve ser maiúscula.
Exemplo: myMethodName def ()
O nome do arquivo - o nome do arquivo de programa deve corresponder exatamente ao nome do objeto.
Quando você salva um arquivo, ele deve salvar o nome do objeto a ser usado (lembre-se Scala é case-sensitive), e acrescentar ".scala" extensão de arquivo. (Se o nome do arquivo e objeto nomes não coincidirem, o programa não será compilado).
Exemplo: Vamos dizer que "HelloWorld" é o nome do objeto. Em seguida, o arquivo deve ser salvo como 'HelloWorld.scala "
def principais (args: Array [corda ]) - Scala programa a partir do método main () inicia o processamento, que é uma parte obrigatória de cada programa Scala entrada do programa.
Scala pode usar duas formas de identificadores, personagens digitais e símbolos.
uso alfanumérico começar com uma letra ou sublinhado pode ser seguido pela letra ou número, um símbolo "$" em Scala também é visto como letras. compilador Scala No entanto, usando o identificador, o aplicativo "$" no início do identificador é reservado devem evitar usar o identificador "$" começar a evitar conflito.
Scala e Java convenção de nomeação usando um camelo de nomenclatura semelhante, o primeiro minúsculas caracteres, como toString. O primeiro caractere nomes de classe ou maiúsculas. Além disso, deve ser evitado, de modo a sublinhar o final do identificador para evitar colisões. Símbolo identificador compreende um ou mais símbolos, tais como +,:?, etc, tais como:
+ ++ ::: < ?> :->
Ele vai usar o identificador de escape quando a implementação interna Scala, tais como: -> Usar $ cólon $ menos US $ maior para representar o símbolo. Então, se você precisar acessar o código Java: -> método, você precisa usar interna nome $ cólon $ menos US $ maior do Scala.
identificador alfanumérico mistos a partir do identificador depois seguido por um ou mais símbolos, tais como o nome unary_ Scala + + método para o tempo de aplicação interna. identificador literal para a cadeia "é definido, por example` x`` yield`.
Você pode usar qualquer identificador válido Scala no meio ", Scala será interpretado como um identificador Scala, um uso típico para o segmento do método do rendimento, no Scala você não pode usar Thread.yield () é porque o rendimento do Scala palavras-chave, você deve usar Thread.`yield` () para usar este método.
A tabela a seguir lista as palavras-chave scala reservados, não podemos usar as seguintes palavras-chave como variáveis:
abstrato | caso | captura | classe |
def | fazer | mais | estende-se |
falso | final | finalmente | para |
forsome | se | implícito | importação |
preguiçoso | fósforo | novo | nulo |
objeto | override | pacote | privado |
protegido | retorno | selado | super |
esta | jogar | traço | tentar |
verdadeiro | tipo | val | var |
enquanto | com | rendimento | |
- | : | = | => |
<- | <: | <% | >: |
# | @ |
Scala é semelhante a muitos Java suporta comentários de linha única. comentários de várias linhas podem ser aninhadas, mas deve ser devidamente aninhados, um comentário que começa com um símbolo correspondente a acabar símbolo. NOTA compilador Scala irá ser ignorado, os exemplos são os seguintes:
object HelloWorld { /* 这是一个 Scala 程序 * 这是一行注释 * 这里演示了多行注释 */ def main(args: Array[String]) { // 输出 Hello World // 这是一个单行注释 println("Hello, world!") } }
Apenas uma linha com um espaço ou comentários, Scala vai pensar que é uma linha em branco, ele irá ignorá-lo. Marcas podem ser espaços ou comentários para dividir.
Scala é uma linguagem orientada a linha, a declaração com um ponto e vírgula (;) de fim de linha ou quebras. programa Scala, o ponto e vírgula no final da instrução é geralmente opcional. Se você está disposto a entrar em um, mas se houver apenas uma linha na declaração ou não escrever. Por outro lado, se você escrever várias instruções em uma linha por isso é necessário o ponto e vírgula. Por exemplo
val s = "本教程"; println(s)
Scala é definido usando o pacote pacote de palavra-chave, em código Scala para definir um pacote de duas maneiras:
O primeiro método, e Java, como no cabeçalho do ficheiro define o nome do pacote, este método siga todos os códigos são colocados no jornal. Por exemplo:
package com.w3big class HelloWorld
O segundo método é um tanto semelhante a C #, tais como:
package com.w3big { class HelloWorld }
O segundo método, é possível definir vários pacotes em um arquivo.
Scala usando importação pacote de referência de palavra-chave.
import java.awt.Color // 引入Color import java.awt._ // 引入包内所有成员 def handler(evt: event.ActionEvent) { // java.awt.event.ActionEvent pt. // 因为引入了java.awt,所以可以省去前面的部分 }
declarações de importação pode aparecer em qualquer lugar, não apenas no topo do arquivo. resultados de importação de estendendo-se até o fim do bloco de declaração. Isso pode reduzir significativamente a probabilidade de conflitos de nome.
Se você quer introduzir um pacote de vários membros, você pode usar o seletor (Picker):
import java.awt.{Color, Font} // 重命名成员 import java.util.{HashMap => JavaHashMap} // 隐藏成员 import java.util.{HashMap => _, _} // 引入了util包的所有成员,但是HashMap被隐藏了
Nota: Por padrão, Scala java.lang._ sempre introduzido, scala._ e Predef._, Aqui você também pode explicar por que a cabeça scala do pacote, ao utilizar o scala são omitidos.