如何解决在Java中从字符串中删除最后一个字符
我正在编写一个Java代码,当在PasswordField中键入10个以上的字符时出现错误,并且无法从那里键入内容。我尝试在Keypressed事件上从PasswordField中删除最后一个字符,但是它没有删除最后一个字符,而是删除了它之前的字符并用最后一个字符替换。这里是我的代码。
private void passFieldKeyTyped(java.awt.event.KeyEvent evt){
String pw1 = new String(passField.getpassword());
if(passField.getpassword().length==10){
try{
StringBuffer bf = new StringBuffer(pw1);
bf.deleteCharat(10);
String pw2 = new String(bf);
passField.setText(pw2);
JOptionPane.showMessageDialog(this,"<html><h4>Password Must Not Contain More Than 10 Characters !</h4></html>","Error !",JOptionPane.ERROR_MESSAGE);
}
catch(Exception e){
JOptionPane.showMessageDialog(this,e.getMessage());
}
}
我仍然是编程的新手。我希望有人可以帮助我。谢谢!
解决方法
לאון אורטופדיה
דרך זאב ז'בוטינסקי 127,רמת גן
--------------------------------------------------------------------------------
ד"ר חג'לה עראבי רמת גן
ישעיהו 24,רמת גן
--------------------------------------------------------------------------------
ד"ר לפידוס לב חולון
בית לחם 20,חולון
--------------------------------------------------------------------------------
ד"ר רונן דבי
אסותא,תל אביב יפו
--------------------------------------------------------------------------------
ד"ר איתמר בוצר
איינשטיין 40,תל אביב יפו (עופר רמת אביב)
--------------------------------------------------------------------------------
...and so on.
,
我猜您正在尝试从字符串中删除一个字符。
您可以在此处使用 StringBuilder 类删除指定位置的字符。首先将您的String转换为 StringBuilder -
StringBuilder sb = new StringBuilder(inputString);
然后,您可以使用内置方法deleteCharAt()
来删除所需位置的字符,就像这样-
sb.deleteCharAt(10);
希望这对您有所帮助。
,伙计们,很抱歉我发现这是我的一个错误。实际上我不得不再次检查密码字段的长度,并且长度必须为11才能删除第10个字符。代码到了。它奏效了。谢谢大家!!!!!!
private void passFieldKeyTyped(java.awt.event.KeyEvent evt){
String pw1 = new String(passField.getPassword());
if(passField.getPassword().length==11){
try{
StringBuffer bf = new StringBuffer(pw1);
bf.deleteCharAt(10);
String pw2 = new String(bf);
passField.setText(pw2);
JOptionPane.showMessageDialog(this,"<html><h4>Password Must Not Contain More Than 10 Characters !</h4></html>","Error !",JOptionPane.ERROR_MESSAGE);
}
catch(Exception e){
JOptionPane.showMessageDialog(this,e.getMessage());
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。