装箱原始类型的方法
Method to box primitive type
这里是 table 基本类型及其等效包装器 class。
Primitive type Wrapper class
============== =============
boolean Boolean
byte Byte
char Character
float Float
int Integer
long Long
short Short
double Double
我想创建一个方法,将任何给定的原始变量转换为适当的 class。我试过类似下面的方法,但这显然不起作用。任何帮助将不胜感激:
public static <T> T forceBox(T t) {
switch (T) {
case boolean.class : return new Boolean(t);
case int.class : return new Integer(t);
// etc
}
}
调用方代码如下所示:
int x = 3;
System.out.println("x wrapper type: " + forceBox(x).getClass());
虽然在大多数情况下这完全没有必要,但只需使用
public static <T> T forceBox(T t) { // compiler will add the conversion at the call site
return t;
}
虽然你也可以只使用
Object o = <some primitive>;
转换已在需要时作为 boxing process 的一部分完成。
这里是 table 基本类型及其等效包装器 class。
Primitive type Wrapper class
============== =============
boolean Boolean
byte Byte
char Character
float Float
int Integer
long Long
short Short
double Double
我想创建一个方法,将任何给定的原始变量转换为适当的 class。我试过类似下面的方法,但这显然不起作用。任何帮助将不胜感激:
public static <T> T forceBox(T t) {
switch (T) {
case boolean.class : return new Boolean(t);
case int.class : return new Integer(t);
// etc
}
}
调用方代码如下所示:
int x = 3;
System.out.println("x wrapper type: " + forceBox(x).getClass());
虽然在大多数情况下这完全没有必要,但只需使用
public static <T> T forceBox(T t) { // compiler will add the conversion at the call site
return t;
}
虽然你也可以只使用
Object o = <some primitive>;
转换已在需要时作为 boxing process 的一部分完成。