자바에서 코틀린으로 넘어가며,
삽질했던 한 가지를 끄적이려고 합니다.
자바에서는 사용하지 않았던 ``(백틱) 때문에.. 하찮은 삽질을 했습니다.
백준 2675번 문제를 풀다가 생긴 일이었습니다.
import java.util.Scanner
fun main() {
val sc:Scanner = Scanner(System.'in')
repeat(sc.nextInt()){
val count = sc.nextInt()
val S = sc.next()
var result = ""
for(i in S.indices){
repeat(count) {
result += S[i]
}
}
println(result)
}
}
이상한 점을 발견하셨나요?
error: the expression cannot be a selector (occur after a dot)
error: too many characters in a character literal ''in''
이때까지 뭐가 잘못된지 한참을 헤메었습니다.
너무 기초라서 그런건지 검색을 해도 ''(작은 따옴표)와 ""(큰 따옴표)의 차이만 나와있었습니다 ㅜㅜ
위 코드 중 Scanner(System.'in')에서 ' '(작은 따옴표)가 아닌 ` `(백틱)을 사용해야 했더라구요..
그래서 제가 한 번 포스팅을 하려고 합니다. 왕와오앙왕초보를 위하여 !
` `(백틱)
아직 공부를 시작한지 얼마 안되어 사용하는 곳은 Scanner(System.`in`) 밖에 모릅니다
왜 벡틱을 써야하는지 공부를 더 해본 후에 추가 포스팅을 하도록 하겠습니다
' '(작은 따옴표)
작은 따옴표는 문자형(Char)를 감싸는 기호로,
단어 1개만 감싸는 기호입니다.
String a = 'ast' (X)
Char a = 'a' (O)
" "(큰 따옴표)
큰 따옴표는 문자열(String)을 감싸는 기호로,
단어 2개이상일 때 감싸는 기호입니다.
String a = "ast" (X)
Char a = "a" (O)
이것만 알아도 사소한 오류를 쉽게 잡을 수 있습니다 !
오늘도 행복한 코딩하세요 :D