如何从JAVA中写在JLabel上的数字中删除特定数字?

How to delete a specific digit from a number written on JLabel in JAVA?

如果我在 java 中的 JLabel 上写了一个数字,如何从中删除特定数字?是否有任何选项可以让我获取当前光标位置或根据需要设置它,然后删除我选择的特定数字?请帮忙...

你说你想删除最后一位:

String txt = jLabel.getText();
jLabel.setText(txt.substring(0, txt.length()-1));

这应该可以解决问题。

编辑:

您还应该检查空文本:

String txt = jLabel.getText();
if(txt != null && !txt.isEmpty()) {
    jLabel.setText(txt.substring(0, txt.length()-1));
}

只需删除标签文本的最后一个字符,它是一个字符串,如果您不确定在某些情况下该字符串是否可以为空,请捕获 NullpointerException。

但始终确保在调用子字符串时文本不为空以防止出现 IndexOutOfBoundException:

String text = jLabelObject.getText();
try{
    if(!text.isEmpty()){
        jLabelObject.setText(text.substring(0, text.length()-1);
    }
}catch(NullPointerException e){
    jLabelObject.setText("");
}

请查看 Java API 文档

  1. substring(), isEmpty(), length()String
  2. setText() JLabel