1 life 2 live

스파크(스칼라)를 이용한 빅데이터 (2) - 스칼라 기본 [20.8.12] 본문

빅데이터

스파크(스칼라)를 이용한 빅데이터 (2) - 스칼라 기본 [20.8.12]

대희투 2020. 8. 12. 20:44

○ 스칼라를 설치하지않고 사용하는 사이트 : https://scastie.scala-lang.org/

 

Scastie - An interactive playground for Scala

Scastie can run any Scala program with any library in your browser. You don’t need to download or install anything.

scastie.scala-lang.org

 

○ 스칼라의 main 함수를 구현 하는 방법 2가지

1. 한 객체가 main 함수를 구현하는 방법 - def main() 구현

2. 한 객체가 App 트레잇을 상속하는 방법

 

○ 객체

스칼라 : 기본 자료형, 함수, 클래스 등 모든 것이 객체

객체 : Any를 최상위 클라스로 값(AnyVal)타입 과 참조(AnyRef) 타입을 상속 하여 구현

객체 비교 : ==, != 사용

 

○ 자료형

스칼라 : 모든것이 클래스

자료형 : 컴파일 시점에 자동으로 변환, 선언하지 않으면 자동으로 정수는 int, 실수는 Double로 선언

자료형 크기 범위
Byte 8bit -128 ~ 127
Short 16bit -32768 ~ 32767
Int 32bit -2147483648 ~ 2147483647
Long 64bit -9223372036854775808 ~ 9223372036854775807
Float 32bit -3.4E38 ~ 3.4E38
Double 64bit -1.7E308 ~ 1.7E308
Char 16bit 문자형
Boolean 1bit 참, 거짓 표현

<기본 자료형>

자료형 내용
String 문자열 표현
Unit 리턴값이 없음을 표현
Null Null 값 표현
Nothing 모든 객체의 서브 타입
Any 모든 객체의 기본 타입
AnyVal 기본 값 타입의 부모 타입
AnyRef 참조 타입의 부모 타입

<참조 자료형>

정수형 실수형
Byte, Short, Int, Long Float, Double

<숫자형>

 

캐스팅 : 정수형과 실수형 사이의 업캐스팅은 자동으로 이루어지지만 다운캐스팅은 명시적 처리가 필요

Byte(8) -> Short(16) 자동변환 가능

Short(16) -> Byte(8) 자동변환 불가능(오류 발생)

 

데이터 형 선언 : 자동으로 타입 선택

논리형(Boolean) : 조건문에서 분기를 처리할 때 주로 사용

문자형(Char) : 하나의 문자를 표현 가능(쌍따옴표 "" 사용, 멀티라인 """ )

 

 

○ 접두어를 이용한 문자열 처리

스칼라 2.10.0 부터 문자열에 접두어를 붙여서 문자열 변환 가능

기본적으로 제공하는 접두어 s, f, raw

사용자가 접두어 생성가능

 

○ 접두어 s : ${변수명}을 이용하여 문자열안의 변수를 값으로 치환, 계산식, 함수도 사용 가능

 

○ 접두어 f : 문자열 포맷팅 처리, printf()와 같은 방식으로 처리

 

○ 접두어 raw : 특수 문자를 처리하지 않고 원본 문자로 인식

 

○ 예제

 

 

 

모든 글의 출처는 https://wikidocs.net/ 입니다.

728x90
반응형
Comments