Java 将特定位置的字符串值更新2
首先,Java 将特定位置的字符串值更新2,java,Java,首先,s.charAt(4)将返回's'字符,我怀疑您是否希望将其增加2(除非您打算将其更改为'U') 其次,应该使用char变量 最后,我假设您希望修改与从中读取的索引相同的索引,并且您可能希望将其修改为t变量的值,而不是字符“t” { // TODO Auto-generated method stub StringBuilder s = new StringBuilder ("1234S" ); int t = s.charAt(4);
s.charAt(4)
将返回's'字符,我怀疑您是否希望将其增加2(除非您打算将其更改为'U')
其次,应该使用char
变量
最后,我假设您希望修改与从中读取的索引相同的索引,并且您可能希望将其修改为t
变量的值,而不是字符“t”
{
// TODO Auto-generated method stub
StringBuilder s = new StringBuilder ("1234S" );
int t = s.charAt(4);
t =t+2;
s.setCharAt(3, 't');
}
}
}
这对我来说是可行的。谢谢你好像忘了问问题。有什么问题吗?你期望什么?我想用2tanks-Eran更新字符串中第n个位置的值,但我想更新字符3,它是整数,你能帮我吗。@Sankalphirke,我想我刚刚做了。是的,唯一的问题是,我想更新int值,如果不转换,setCharAt会抛出错误,如果错误不应该出现,请告诉我。接受,他的代码更干净,不需要太多的强制转换。
StringBuilder s = new StringBuilder ("1234S");
char t = s.charAt(3);
t = (char)(t+2); // note that this will return a numeric character only if the original
// numeric character was between '0' and '7'
s.setCharAt(3, t);
public static void main(String[] args) {
// TODO Auto-generated method stub
StringBuilder s = new StringBuilder ("1234S" );
int t = s.charAt(3);
t =(int) t+2;
s.setCharAt(3, (char) t);
System.out.println(s);
}