使用
将米的用户输入转换为英尺和英寸// following format (16ft. 4in.). Disable the button so that
// the user is forced to clear the form.
问题是我不知道如何将字符串和int值都放在一个文本字段中,而不是如何将它们设置为if else语句
private void ConversionActionPerformed(ActionEvent e )
{
String s =(FourthTextField.getText());
int val = Integer.parseInt(FifthTextField.getText());
double INCHES = 0.0254001;
double FEET = 0.3048;
double meters;
if(s.equals("in" ) )
{
FourthTextField.setText(" " + val*INCHES + "inch");
}
else if(s.equals("ft"))
{
FourthTextField.setText(" " +val*FEET + "feet");
}
}
是否可以在一个JTextField
中添加string和int值?
答案 0 :(得分:2)
你可以......
FourthTextField.setText(" " + (val*INCHES) + "inch");
或
FourthTextField.setText(" " + Double.toString(val*INCHES) + "inch");
或
FourthTextField.setText(" " + NumberFormat.getNumberInstance().format(val*INCHES) + "inch");
<强>更新强>
如果你关心的只是提取文本的数字部分,你可以做这样的事情......
String value = "1.9m";
Pattern pattern = Pattern.compile("\\d+([.]\\d+)?");
Matcher matcher = pattern.matcher(value);
String match = null;
while (matcher.find()) {
int startIndex = matcher.start();
int endIndex = matcher.end();
match = matcher.group();
break;
}
System.out.println(match);
这会输出1.9
,在m
之后被删除。这将允许您提取String
的数字元素并转换为转换数字。
这将处理整数和十进制数。