int 타입 변수를 문자열(String) 타입으로 바꾸는 다양한 방법에 대해 알아보겠습니다.
저는 평소에 익숙한 toString() 을 많이사용하는 편인데, 이번 기회에 다양한 문자 변환 방법과 각 함수의 차이점에 대해 알아보았습니다.
1. toString() 함수 사용하기:
Int 변수나 상수에 toString() 함수를 호출하여 String으로 변환할 수 있습니다. toString() 함수는 Int 값을 해당하는 숫자의 문자열 표현으로 바꿉니다.
특징
- 가장 간단한 방법, 직관적인 코드 표현 가능
- toSTring() 함수는 10진수로 변환
val number: Int = 42
val strNumber: String = number.toString()
2. String Interpolation(문자열 보간법) 사용하기:
문자열 보간법을 사용하여 Int 값을 문자열로 바로 변환할 수 있습니다. 문자열 보간법은 $변수명 형태로 변수 값을 문자열에 삽입하는 간편한 방법입니다.
특징
- 변수를 문자열에 바로 삽입하여, 코드를 읽기 쉬움
- 기본적으로 10진수로 변환
val number: Int = 42
val strNumber: String = "$number"
// OR
print("number int To String : $number")
3. String.valueOf() 함수 사용하기:
String.valueOf() 함수를 사용하여 Int 값을 String으로 변환할 수 있습니다. 이 함수는 다양한 데이터 타입을 문자열로 변환할 때 사용됩니다.
특징
- String 클래스의 정적 메서드. 다양한 데이터 타입을 String 으로 변환함
val number: Int = 42
val strNumber: String = String.valueOf(number)
4. StringBuilder를 사용하여 변환하기:
StringBuilder를 사용하여 Int 값을 문자열로 변환할 수 있습니다. StringBuilder는 가변적인 문자열을 만들 때 효율적으로 사용할 수 있는 클래스입니다.
특징
- 가변적인 문자열을 생성하고 효율적으로 문자열을 조작할 수 있도록 지원하는 클래스
- 문자열을 연결하는 동작이 효율적으로 처리되어 성능 향상 기대
- 대량의 문자열 조작이 필요한 경우에 유용하며, 일반적인 간단한 경우에는 다소 복잡하고 불필요한 방법일 수 있음
val number: Int = 42
val strNumber: String = StringBuilder().append(number).toString()
// 활용 예시
// 숫자 n 이 주어 졌을때 "n, n+1, n+2, n+3 ..." 형태의 문자열을 출력하고자 하는 경우
fun concatenateNumbers(n: Int): String {
val stringBuilder = StringBuilder()
for (i in 1..n) {
stringBuilder.append(i)
stringBuilder.append(", ")
}
// 마지막에 ", "를 제거하여 문자열 완성
stringBuilder.setLength(stringBuilder.length - 2)
return stringBuilder.toString()
}
fun main() {
val n = 5
val concatenatedNumbers = concatenateNumbers(n)
println(concatenatedNumbers) // 출력: "1, 2, 3, 4, 5"
}
5. String.format() 함수 사용하기:
String.format() 함수를 사용하여 Int 값을 문자열로 변환할 수 있습니다. 이 함수는 포맷 문자열과 값을 결합하여 문자열을 생성합니다.
특징
- String 클래스의 정적 메서드. C언어의 printf 와 비슷한 방식으로 포맷 문자열을 사용하여 문자열 생성
- 특정 형식에 맞추어 int 값을 문자열로 변환할 수 있음. ex) %d: 10진수, %x: 16진수
val number: Int = 42
val strNumber: String = String.format("%d", number)
일반적으로는 1, 2번을 사용하는게 가장 간단할 것으로 보입니다만 ㅎㅎ
뭐든 알아두면 언젠가 한번은 쓰게되니까요! 도움이 되셨으면 좋겠습니다.
'😺 Development > Kotlin' 카테고리의 다른 글
[Android/Kotlin] Intent 로 파일 보내기/Intent 파일 여러개 (0) | 2023.08.11 |
---|---|
[Kotlin] for 사용 법 : 반복문 for 문 사용법 정리 (0) | 2023.07.30 |