我想将两个String变量相乘,并希望将答案存储在一个新变量中。我怎样才能做到这一点?
我已经尝试过这么简单:
String t2 = t1 * m1;
错误是*
未定义。所以,我尝试添加:
import java.math.'whatever';
这没有解决错误。
答案 0 :(得分:2)
试
String t2 = String.valueOf(Float.valueOf(t1) * Float.valueOf(m1))
答案 1 :(得分:2)
首先从String
获取值并按以下方式乘以parsed value
:
double result = Double.parseDouble(t1 ) * Double.parseDouble(m1);
String t2 = Double.toString(result );
答案 2 :(得分:1)
使用
String t2 = String.valueOf(Integer.parseInt(t1) * Integer.parseInt(m1))
答案 3 :(得分:1)
*
未定义,因为t1是一个字符串,并且字符串不能用于乘法。如果t1和m1是数字的字符串表示,您可以将它们转换为数字(选择Integer,Float,Double或应用程序中需要的任何内容),然后相乘。像这样(变量名称是非java风格的,为了额外的可读性,不要抨击它):
String t1 = "1.5";
String m1 = "10";
float t1_as_a_float = Float.parseFloat(t1);
float m1_as_a_float = Float.parseFloat(m1);
float t2_as_a_float = t1_as_a_float * m1_as_a_float;
String t2 = Float.toString(t2_as_a_float);
答案 4 :(得分:1)
Java不知道将两个任意字符串转换在一起意味着什么(即什么是“臭”*“鲸”?)。首先,您需要将字符串转换为数字,将这些数字相乘,然后将结果转换回字符串。
try {
double t1_num = Double.valueOf(t1);
double m1_num = Double.valueOf(m1);
double t2_num = t1_num * m1_num;
String t2 = String.valueOf(t2_num);
} catch (NumberFormatException e) {
// called if numbers cannot be converted to Strings
}
当t1和m1包含非数字字符时,您需要try-catch块来处理这些情况,例如“Ryan1”或“15”。
答案 5 :(得分:0)
字符串t1 =“325486”;
String m1 = "7868";
int n1 = Integer.parseInt(t1);
int n2 = Integer.parseInt(m1);
int n3 = n1 * n2;
String t2 = String.format("%d", n3);