Java 将特定字符串索引替换为0
我已经构建了一个表格图表应用程序。我有一个带有动作事件的计算按钮。因此,首先,action事件将从名为field的textfield按钮获取文本。之后,它会将字符串转换为int。但是,在将字符串转换为int之前,我想检查一件事。那就是,我想检查字符串索引[0]是否等于“-”,如果是,那么它将更改为0。我试着提出一个if条件,比如Java 将特定字符串索引替换为0,java,actionlistener,actionevent,Java,Actionlistener,Actionevent,我已经构建了一个表格图表应用程序。我有一个带有动作事件的计算按钮。因此,首先,action事件将从名为field的textfield按钮获取文本。之后,它会将字符串转换为int。但是,在将字符串转换为int之前,我想检查一件事。那就是,我想检查字符串索引[0]是否等于“-”,如果是,那么它将更改为0。我试着提出一个if条件,比如 if(text.charAt[0] == "-"){text.setCharAt(0, "0")} 但它说,条件是不可比的,从字符到字符串。 是否有其他方法将索引字符
if(text.charAt[0] == "-"){text.setCharAt(0, "0")}
但它说,条件是不可比的,从字符到字符串。
是否有其他方法将索引字符替换为0
以下是操作侦听器代码:
calculate = JButton; result = JTextArea; field = JTextField;
calculate.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt) {
result.setText(null);
String text = field.getText();
Integer i = Integer.valueOf(text);
for (int j = 1; j <= 10; j++){
result.append((i + " " + "x" + " " + j + "=" + " " +(i * j)) + "\n");
}});
而且,;当新字符串设置为“str”而不是“text”时,我无法将str指定为字符串,例如StringBuilder str=new StringBuilder(str)代码>因此;我基本上被困在这条线上。在:
text.charAt[0] == "-"
text.charAt[0]
是一个字符
“-”
是一个字符串
此外,决不能对字符或字符串使用=
。改用equals()
试一试
试一试
if(text.charAt[0]='-'){text.setCharAt(0,'0')}
“a”-字符串
“a”-字符
text.charAt[0] == "-"
在此行中,检查字符串“-”
将其更改为“-”
使用equals()
而不是==
,如下所示:
text.charAt[0].equals('-')
这两个代码都工作正常,但在这之后,当我放入Integer I=Integer.valueOf(str)代码>而不是“文本”,它不接受,因为str是字符串生成器。@ArnaudDenoyelle@user1946440使用StringBuilder#toString()
:Integer.valueOf(str.toString())
@user1946440使用toString()
方法将字符串生成器转换为字符串。感谢@Arnaud Denoyelle,Integer.valueOf(str.toString())代码>工作。
text.charAt[0] == "-"
text.charAt[0].equals('-')