如何将String值转换为存储在另一个String中的给定数据类型?

时间:2013-03-18 08:58:59

标签: java string types casting

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

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

仅使用上述两个变量,我需要用值3.14填充变量'result'。如果一个cast方法可以用于非原始类型,那也很好。

2 个答案:

答案 0 :(得分:4)

您必须使用开关并为每种可能的数据类型Ex:

写一个案例
switch (type){

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

以及每种可能的数据类型

答案 1 :(得分: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也允许你传递字符串。