Kotlin
Java 개발자를위한 Kotlin
수색…
소개
Kotlin에 오는 대부분의 사람들은 자바 프로그래밍 배경을 가지고 있습니다.
이 주제에서는 Java를 Kotlin과 비교하여 가장 중요한 차이점과 Kotlin이 Java보다 제공하는 보석을 강조한 예제를 수집합니다.
변수 선언하기
Kotlin에서 변수 선언은 Java와 약간 다릅니다.
val i : Int = 42
그들은 하나 시작
val
또는var
선언하고,final
( "발 단말") 또는 VAR의 iable을.유형은 이름 다음에 다음과 같이 구분됩니다
:
Kotlin의 타입 유추 덕분에 명시 적 타입 선언은 컴파일러가 모호하지 않게 탐지 할 수있는 타입을 갖는 할당이 있다면 obmitted 될 수 있습니다
자바 | 코 틀린 |
---|---|
int i = 42; | var i = 42 ( 또는 var i : Int = 42 ) |
final int i = 42; | val i = 42 |
간단한 정보들
- 코 틀린은 필요 없다
;
진술을 끝내기 - Kotlin은 null-safe입니다.
- Kotlin은 100 % Java 상호 운용 가능
- Kotlin에는 프리미티브 가 없습니다 (가능한 경우 JVM의 객체 대응을 최적화 함).
- Kotlin 클래스에는 필드가 아닌 속성이 있습니다.
- Kotlin은 자동 생성
equals
/hashCode
메소드 및 필드 접근hashCode
사용하여 데이터 클래스 를 제공합니다. - Kotlin에는 런타임 예외 만 있고 예외는 없습니다.
- Kotlin은
new
키워드 가 없습니다 . 객체 생성은 다른 메소드와 마찬가지로 생성자를 호출하여 수행됩니다. - Kotlin은 (제한된) 연산자 오버로딩을 지원합니다. 예를 들어지도 값에 액세스하는 것은 다음과 같이 작성할 수 있습니다.
val a = someMap["key"]
- Kotlin은 JVM 용 바이트 코드로 컴파일 될뿐만 아니라 Java Script 에도 컴파일 될 수 있으므로 Kotlin에서 백엔드 및 프론트 엔드 코드를 모두 작성할 수 있습니다.
- Kotlin은 Java 6와 완벽하게 호환되며 특히 오래된 Android 기기 (예 : 그렇진 않은)의 지원과 관련하여 특히 흥미 롭습니다.
- Kotlin은 Android 개발을 위해 공식적으로 지원되는 언어 입니다.
- Kotlin의 콜렉션에는 변경 가능 콜렉션과 불변 콜렉션 간의 내장 된 분리가 있습니다 .
- 코 틀린은 코 루틴을 지원합니다 (실험적).
평등과 정체성
Kotlin은 동등성을 위해 ==
를 사용하고 (즉, 호출 equals
내부적으로 equals
) 참조 용 ID ===
를 사용합니다.
자바 | 코 틀린 |
---|---|
a.equals(b); | a == b |
a == b; | a === b |
a != b; | a !== b |
참조 : https://kotlinlang.org/docs/reference/equality.html
IF, TRY 및 기타는 표현식이 아닌 표현식입니다.
Kotlin에서 if
, try
및 others는 expression이 아니기 때문에 값이 반환됩니다.
예를 들어, Kotlin은 Java의 삼원 엘비스 연산자를 가지고 있지 않지만 다음과 같이 작성할 수 있습니다.
val i = if (someBoolean) 33 else 42
더 생소하지만 똑같이 표현력있는 표현식은 try
식입니다 .
val i = try {
Integer.parseInt(someString)
}
catch (ex : Exception)
{
42
}
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow