스칼라 데이터 유형


Scala는 Java와 동일한 데이터 유형을 갖습니다. 다음 표에는 Scala에서 지원하는 데이터 유형이 나열되어 있습니다.

数据类型描述
Byte8位有符号补码整数。数值区间为 -128 到 127
Short16位有符号补码整数。数值区间为 -32768 到 32767
Int 32位有符号补码整数。数值区间为 -2147483648 到 2147483647
Long 64位有符号补码整数。数值区间为 -9223372036854775808 到 9223372036854775807
Float32位IEEE754单精度浮点数
Double64位IEEE754单精度浮点数
Char16位无符号Unicode字符, 区间值为 U+0000 到 U+FFFF
String字符序列
Booleantrue或false
Unit表示无值,和其他语言中void等同。用作不返回任何结果的方法的结果类型。Unit只有一个实例值,写成()。
Nullnull 或空引用
NothingNothing类型在Scala的类层级的最低端;它是任何其他类型的子类型。
AnyAny是所有其他类的超类
AnyRefAnyRef类是Scala里所有引用类(reference class)的基类

위 표에 나열된 데이터 유형은 모두 객체입니다. 즉, 스칼라에는 Java의 기본 유형이 없습니다. 스칼라에서는 숫자와 같은 기본 유형에 대해 메서드를 호출할 수 있습니다.


Scala 기본 리터럴

Scala는 매우 간단하고 직관적입니다. 다음으로 Scala 리터럴을 자세히 소개하겠습니다.

정수 리터럴

정수 리터럴은 Int형을 나타내는 경우 숫자 뒤에 L 또는 소문자 l을 접미사로 추가할 수 있습니다. :

0
035
21 
0xFFFFFFFF 
0777L

부동 소수점 리터럴

부동 소수점 숫자 뒤에 f 또는 F 접미사가 있으면 Float 유형이고, 그렇지 않으면 Double 유형입니다. 예는 다음과 같습니다:

0.0 
1e30f 
3.14159f 
1.0e100
.1

부울 리터럴

부울 리터럴에는 true와 false가 포함됩니다.

기호 리터럴

기호 리터럴은 다음과 같이 작성됩니다: '<identifier>, 여기서 <identifier>는 임의의 영숫자 식별자일 수 있습니다(참고 : 숫자로 시작할 수 없습니다). 이 리터럴은 미리 정의된 클래스 scala.Symbol의 인스턴스에 매핑됩니다.

예: 기호 리터럴 'xscala.Symbol("x") 표현식의 약어입니다. 기호 리터럴은


package scala
final case class Symbol private (name: String) {
   override def toString: String = "'" + name
}
<로 정의됩니다. 🎜> 스칼라의 문자 리터럴

은 다음과 같이 반각 작은따옴표(')로 묶인 문자로 표현됩니다.

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

여기서

는 전송 문자를 나타냅니다. u0041 숫자 또는 rn과 같은 고정 이스케이프 문자 뒤에 올 수 있습니다.

문자열 리터럴

문자열 표현 방법은 다음과 같이 큰따옴표(")로 일련의 문자를 포함하는 것입니다.

"Hello,\nWorld!"
"php中文网官网:www.php.cn"

여러 줄 문자열의 표현 방법

여러 줄 문자열은 세 개의 큰따옴표를 사용하여 구분 기호를 나타내며 형식은 다음과 같습니다.

""" ... """

의 예는 다음과 같습니다. 다음은 다음과 같습니다.

val foo = """php中文网
www.php.cn
www.w3cschool.cc
www.runnoob.com
以上三个地址都能访问"""

Null 값

Null 값은 scala.Null 유형입니다.

Scala.Null 및 scala.Scala 객체의 특정 "특정 사례"를 처리하는 데 사용되는 것은 없습니다. 통일된 방식의 타입 시스템입니다. "는 특별한 타입입니다.

Null 클래스는 모든 참조 클래스(AnyRef에서 상속되는 클래스)의 하위 클래스인 Null 참조 객체의 타입입니다. Null

Scala 이스케이프 문자

다음 표에는 일반적인 이스케이프 문자가 나열되어 있습니다.

0에서 255 사이의 유니코드 문자는 8진수 이스케이프 시퀀스(예: 뒤에 백슬래시 )로 표시될 수 있습니다. 최대 3개의 8진수.

문자나 문자열에서 백슬래시와 다음 문자 시퀀스는 올바른 이스케이프 시퀀스를 형성할 수 없습니다. 컴파일 오류입니다.

다음 예에서는 일부 이스케이프 문자의 사용을 보여줍니다.

object Test {
   def main(args: Array[String]) {
      println("Hello\tWorld\n\n" );
   }
}
예제 실행 »

위 코드를 실행하면 출력 결과는 다음과 같습니다.

$ scalac Test.scala
$ scala Test
Hello	World


$