AFAIKプリミティブがラッパークラスにボックス化されているため、Javaがプリミティブ型を呼び出されたオートボクシングよりもラッパークラスオブジェクトに自動的に変換する場合。
そうです
int test = 3;
String str = String.valueOf(test);
オートボクシングとしてカウントされますか?
尋ねる理由は?
私は最近この質問に出くわしました。私が思う理由は、Java 5で導入されたオートボクシングです(Java 4には存在しません)。
AFAIKプリミティブがラッパークラスにボックス化されているため、Javaがプリミティブ型を呼び出されたオートボクシングよりもラッパークラスオブジェクトに自動的に変換する場合。
そうです
int test = 3;
String str = String.valueOf(test);
オートボクシングとしてカウントされますか?
尋ねる理由は?
私は最近この質問に出くわしました。私が思う理由は、Java 5で導入されたオートボクシングです(Java 4には存在しません)。
参照タイプとプリミティブの間に「インピーダンスの不一致」がある場合にのみ自動ボックス化
No.
param valueOf
付きのメソッド のソースコードを見ると int
public static String More ...valueOf(int i) {
return Integer.toString(i, 10);
}
ToString を呼び出すInteger wrapper
整数ラッパーで作成される新しい文字列 toString()
public static String More ...toString(int i, int radix) {
if (radix < Character.MIN_RADIX || radix > Character.MAX_RADIX)
radix = 10;
/* Use the faster version */
if (radix == 10) {
return toString(i);
}
char buf[] = new char[33];
boolean negative = (i < 0);
int charPos = 32;
if (!negative) {
i = -i;
}
while (i <= -radix) {
buf[charPos--] = digits[-(i % radix)];
i = i / radix;
}
buf[charPos] = digits[-i];
if (negative) {
buf[--charPos] = '-';
}
return new String(buf, charPos, (33 - charPos));
}