그래서, Long.valueOf(String s)
나는 붙어있는 것과 같은 방법이 없기 때문에 .
Kotlin에서 String을 Long으로 변환하는 방법?
답변
1. string.toLong()
문자열을 [Long] 숫자로 구문 분석하고 결과를 리턴합니다.
@throws NumberFormatException 문자열이 유효한 숫자 표현이 아닌 경우.
2. string.toLongOrNull()
문자열을 [Long] 숫자로 구문 분석하고 결과
null
가 문자열이 유효한 숫자 표현이 아닌 경우를 리턴합니다 .
삼. str.toLong(10)
문자열을 [Long] 숫자로 구문 분석하고 결과를 리턴합니다.
@throws NumberFormatException 문자열이 유효한 숫자 표현이 아닌 경우.
@throws IllegalArgumentException [radix]가 문자열 대 숫자 변환에 유효한 기수가 아닌 경우.
public inline fun String.toLong(radix: Int): Long = java.lang.Long.parseLong(this, checkRadix(radix))
4. string.toLongOrNull(10)
문자열을 [Long] 숫자로 구문 분석하고 결과
null
가 문자열이 유효한 숫자 표현이 아닌 경우를 리턴합니다 .@throws IllegalArgumentException [radix]가 문자열 대 숫자 변환에 유효한 기수가 아닌 경우.
public fun String.toLongOrNull(radix: Int): Long? {...}
5. java.lang.Long.valueOf(string)
public static Long valueOf(String s) throws NumberFormatException
답변
String
해당 확장 방법이 있습니다.
"10".toLong()
답변
확장 메소드는 String
다른 기본 유형으로 구문 분석 할 수 있습니다. 아래 예 :
답변
참고 : 언급 한 답변 jet.String
은 구식입니다. 현재 Kotlin (1.0)은 다음과 같습니다.
String
Kotlin의 모든 사용자 는 이미 호출 할 수있는 확장 기능을 가지고 있습니다 toLong()
. 특별한 것이 필요하지 않습니다. 그냥 사용하십시오.
에 대한 모든 확장 기능String
이 문서화되어 있습니다. API 참조 에서 표준 lib에 대한 다른 것을 찾을 수 있습니다.
답변
흥미 롭군. 다음과 같은 코드 :
val num = java.lang.Long.valueOf("2");
println(num);
println(num is kotlin.Long);
이 출력을 만듭니다.
2
true
Kotlin 은이 경우 java.lang.Long
긴 프리미티브에서 kotlin.Long
자동으로 변환 합니다. 따라서 솔루션이지만 java.lang 패키지 사용없이 도구를 보게되어 기쁩니다.
답변
실제로 ‘길이’도 확인해야하는 시간의 90 %가 유효하므로 다음이 필요합니다.
"10".toLongOrNull()
기본 유형의 각 ‘toLong’마다 ‘orNull’이 있으며 Kotlin과 함께 유효하지 않은 사례를 관리 할 수 있습니까? 관용구.
답변
string.toLong ()
string
변수는 어디에 있습니까 ?