-1

假设我有一个字符串变量“值”和一个字符串变量“类型”。我想将变量“值”中的数据转换为变量“类型”指定的类型。例如:

String value = "3.14";
String type = "float";
float result;

仅使用上述两个变量,我需要用值 3.14 填充变量“结果”。如果可以将强制转换方法用于非原始类型,那就太好了。

4

2 回答 2

4

您将不得不使用开关并为每种可能的数据类型编写一个案例,例如:

switch (type){

case "float": 
float result = Float.parseFloat(value);
break;
....
case "int":
int result = Integer.parseInt(value);
break;
...
}

对于每种可能的数据类型,依此类推

于 2013-03-18T09:02:43.767 回答
1

像这样使用将String具有十进制数的数字转换为Float. 所以你可以为其他人做同样的过程。

double result = 0.0;
if(type.equals("float")
    result = Float.parseFloat(value);
else if(type.equals("int");
    result = Integer.parseInt(value);
else if(type.equals("double");
    result = Double.parseDouble(value);

或者

您可以使用 switch 语句。但是你不能在 switch 中传递字符串,直到 Java SE6 和 Java SE 7 也允许你传递字符串。

于 2013-03-18T09:00:38.727 回答