Latest web development tutorials

Typy danych Scala

Scala i Java mają ten sam typ danych, poniższa tabela zawiera typy danych obsługiwane Scala:

Typy danych opis
bajt 8-bitowa liczba całkowita dopełniacza. Zakres wartości wynosi -128 do 127
krótki 16-bitowa liczba całkowita dopełniacza. Zakres wartości -32768 do 32767
Int 32-bitowa liczba całkowita dopełniacza. Zakres wartości -2147483648 do 2147483647
długo 64-bitowa liczba całkowita dopełniacza. przedział liczbowy -9223372036854775808 do 9223372036854775807
pływak 32-bitowe zmiennoprzecinkowe pojedynczej precyzji IEEE 754
podwójny 64-bitowe zmiennoprzecinkowe pojedynczej precyzji IEEE 754
zwęglać 16 bez znaku Unicode U + 0000 do zakresu wartości U + FFFF
sznur sekwencja znaków
Boolean prawda czy fałsz
jednostka Reprezentuje ona żadnej wartości, a inne języki void odpowiedników. Stosowana jako metoda nie zwraca żadnych wyników spowodować typ. Jednostka jest tylko jedna instancja wartości, pisemnej ().
Null referencje pustymi
nic Nic typy klas Hierarchia Scala najbardziej low-end, jest innego rodzaju podtypu.
dowolny Wszelkie nadklasą wszystkich innych klas
AnyRef AnyRef klasy w Scala to wszystkie użyte klas (klasa referencyjna) klasy bazowej

Obiekt typy danych są wymienione w tabeli, co oznacza, że ​​nie ma java scala rodzimych typów. W Scala mogą dzwonić do innego podstawowego typu cyfrowy.


Podstawa Scala dosłowne

Scala jest bardzo prosta i intuicyjna. Następnie będzie szczegółowo literały Scala.

Integer literały

Typ int dla całkowitych literałów, jeśli wyrażone Long, mogą być dodawane jako przyrostek L lub małymi literami L po numerze. :

0
035
21 
0xFFFFFFFF 
0777L

literały spławikowe

Jeśli jest za f pływaka lub F przyrostka wskazuje, że jest to typ float, inaczej podwójny typu. Przykłady są następujące:

0.0 
1e30f 
3.14159f 
1.0e100
.1

logiczne Literówki

Logiczne literały mają prawdziwe i fałszywe.

symbole literalne

Symbol dosłowne jest napisane:'<identyfikator>, gdzie <identyfikator>może być dowolną literę lub numer identyfikacyjny (Uwaga: Nie można uruchomić z numerem). To dosłowne jest mapowany do wystąpienia predefiniowanego klasy scala.Symbol.

Takich jak: dosłownym symbol"x jest scala.Symbolwyrażenie(" X ")skróconą literałami symbole są zdefiniowane w następujący sposób:

package scala
final case class Symbol private (name: String) {
   override def toString: String = "'" + name
}

charakter dosłowne

Wpisz znaki reprezentowane w scala pół szerokości pojedynczy cudzysłów ( ') znaków, co następuje:

'a' 
'\u0041'
'\n'
'\t'

Gdzie\ oznacza przeniesienie znaków, cyfr lub może nastąpić u0041\ r \ n oraz inny charakter stały ucieczki.

Łańcuch znaków

reprezentację ciąg jest w cudzysłów ( ") zawiera szereg znaków, takich jak:

"Hello,\nWorld!"
"本教程官网:www.w3big.com"

Reprezentacyjne ciągi obsługujący kilka linii

ciągi wielo-liniowe wykorzystujące trzy pary cudzysłowie, aby wskazać separatora,format:. "" "" "" ...

Przykłady są następujące:

val foo = """本教程
www.w3big.com
www.w3cschool.cc
www.runnoob.com
以上三个地址都能访问"""

wartość Null

Null jest typu scala.Null.

Scala.Null i scala.Nothing jest zorientowany obiektowo układ typu Scala pewnych "warunków brzegowych" specjalnego rodzaju jednolitego podejścia.

Null typ jest typem zerowego odwołania do obiektu, który stanowi odniesienie do każdej klasy (Dziedziczony z AnyRef podklasy klasy). Wartości null nie są kompatybilne typy.

charakter ucieczki Scala

Poniższa tabela zawiera listę wspólnych znaków ewakuacyjnych:

escape character Unicode opis
\ B \ U0008 Backspace (BS), aktualna pozycja do poprzedniego
\ T \ U0009 Zakładka pozioma (HT) (przejście do następnej pozycji TAB)
\ N \ U000c nowego wiersza (LF), aktualna pozycja do początku następnego wiersza
\ F \ U000c Wysunięcie strony (FF), aktualna pozycja na początek następnej stronie
\ R \ U000d Powrotu karetki (CR), aktualna pozycja na początek linii
\ " \ u0022 Reprezentuje znak podwójnego cudzysłowu znak ( ")
\ ' \ u0027 W imieniu jednym cytatem znaków ( ')
\\ \ U005c Reprezentacji znaku ukośnika '\'

Unicode 0-255 można użyć ósemkowy sekwencję escape, aby wskazać, że backslash "\", a następnie do trzech ósemkowym.

Znak lub ciąg sekwencji znaków backslash oraz dodaje, nie może stanowić ważny sekwencja ucieczki spowoduje błąd kompilacji.

Poniższy przykład demonstruje użycie niektórych znaków ewakuacyjnych:

object Test {
   def main(args: Array[String]) {
      println("Hello\tWorld\n\n" );
   }
} 
Uruchomienie instancji »

Wykonanie powyższego kodu wyniki wyjściowe są w następujący sposób:

$ scalac Test.scala
$ scala Test
Hello	World


$