정오표
Taeho Kim edited this page Mar 5, 2019
·
6 revisions
charAt()
메서드를 사용하는 예제 코드 중 코틀린 코드의 세미콜론 제거
// ch1에 인덱스가 4인 문자 'm' 할당
-val ch1: Char = foo.get(4);
+val ch1: Char = foo.get(4)
// ch2에 인덱스가 6인 문자 'i' 할당
-val ch2: Char = foo[6];
+val ch2: Char = foo[6]
// 자료를 수정할 수 없는 리스트 생성
val immutableList : List<String> = listOf("Lorem", "ipsum", "dolor", "sit")
// 컴파일 에러: 자료 수정을 위한 함수를 지원하지 않음
-mutableList.add("amet")
+immutableList.add("amet")
...
// 자료를 수정하지 않는 자료형으로 재할당
val immutableList2: List<String> = mutableList
// 컴파일 에러: 자료 수정을 위한 함수를 지원하지 않음
-mutableList.add("amet")
+immutableList2.add("amet")
enum
언어별 예제 코드
java
public enum Direction {
- NORTH, SOUTH, WEST, EAST;
+ NORTH("N"), SOUTH("S"), WEST("W"), EAST("E");
public String label;
Direction(String label) {
this.label = label;
+ }
}
kotlin
enum class Direction(
val label: String) {
- NORTH, SOUTH, WEST, EAST
+ NORTH("N"), SOUTH("S"), WEST("W"), EAST("E")
}
인덱스 접근 연산자 예제 코드 내 triple[3]
> triple[2]
로 수정
// triple 객체 내 first, second, third 프로퍼티의 값을 출력합니다.
// 10 20 30이 출력됩니다.
-println("${triple[0]} ${triple[1]} ${triple[3]}")
+println("${triple[0]} ${triple[1]} ${triple[2]}")
// 30 30 30이 출력됩니다.
-println("${triple[0]} ${triple[1]} ${triple[3]}")
+println("${triple[0]} ${triple[1]} ${triple[2]}")
drop()
함수를 설명하는 코드 내 주석 수정
// 문자열의 길이가 5 이하인 조건을 만족할 때까지 해당하는 항목을 제외합니다.
-//"NYC"와 "Singapore"도 문자열의 길이가 5 이하이지만,
-//"Mountain View"가 조건을 만족하지 않으므로 이후의 인자들은 모두 무시합니다.
+//"NYC"의 문자열의 길이도 5 이하이지만,
+//"Mountain View"에서 조건을 만족하지 않게 되므로 이 이후의 항목들은 더 이상 제외되지 않습니다.
first()
함수를 설명하는 코드 내 주석 수정
-// 문자열 길이가 5 이상인 첫 번째 인자를 반환합니다.
+// 문자열 길이가 5를 초과하는 첫 번째 인자를 반환합니다.
println(cities.first { city -> city.length > 5 })
-// 문자열 길이가 5 이상인 마지막 인자를 반환합니다.
+// 문자열 길이가 5를 초과하는 마지막 인자를 반환합니다.
println(cities.last { city -> city.length > 5})
...
try {
- // 조건을 만족하는 첫 번째 인자를 반환하며, 없을 경우 널 값을 반환합니다.
+ // 조건을 만족하는 첫 번째 인자를 반환하며, 없을 경우 예외를 발생시킵니다.
cities.first { city -> city.isEmpty() }
} catch (e: NoSuchElementException) {
println("Not found")
}
...
average()
함수 실행 결과
console
//numbers.average()
-5.5
+3.4285714285714284
main.java.dstDirs
를 main.java.srcDirs
로 수정
android {
...
// 'kotlin' 폴더를 소스 코드 폴더로 인식하도록 설정합니다.
sourceSets {
- main.java.dstDirs += 'src/main/kotlin'
+ main.java.srcDirs += 'src/main/kotlin'
}
}
본문 내
-다음은 앞의 액티비티 내 CompositeDisposable.add() 함수를 사용하는 부분을 +-연산자를 ...
+다음은 앞의 액티비티 내 CompositeDisposable.add() 함수를 사용하는 부분을 +=연산자를 ...
코드 13-13 제목 내
-``CompositeDisposable.add() 대신 `+-`연산자를 사용한 모습
+``CompositeDisposable.add() 대신 `+=`연산자를 사용한 모습
코드 14-13
class MyActivity: AppCompatActivity() {
// MyViewModel에서 필요한 값응ㄹ 정의합니다
val api: ItemApi = null
val itemDao: ItemDao = null
lateinit var viewModel: MyViewModel
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// MyViewModelFactory 인스턴스를 생성합니다
- val viewModelFactory = MyViewModel(api, itemDao)
+ val viewModelFactory = MyViewModelFactory(api, itemDao)
// 앞에서 생성한 MyViewModelFactory의 인스턴스를
// ViewModelProvider.of() 함수에 전달합니다
viewModel = ViewModelProviders.of(
this, viewModelFactory)[MyViewModel::class.java]
...
}
...
}