我可以以某种方式n
从 String 的末尾删除字符吗?
例如:
String a = "Hello";
a -= 1;
结果是a
= "Hell"
?
好的,而不是给你-1,我可以帮助:)在Java中,做
String a = "Hello";
int stepsBack = 1;
if (a.length()>=stepsBack) //Avoid StringIndexOutOfBoundsException
a=a.substring(0,a.length()-stepsBack);
System.out.println(a);
尝试这个:
a = a.substring(0,a.length()-1);
请参阅此String#substring(int beginIndex,int endIndex)以更好地理解:
返回一个新字符串,它是该字符串的子字符串。子字符串从指定的 beginIndex 开始并延伸到索引 endIndex - 1 处的字符。因此子字符串的长度是 endIndex-beginIndex。
不,您可以期望的最好的结果是:
a = a.substring(0, a.length() - 1);
或这个:
a = new StringBuilder(a).deleteCharAt(a.length() - 1).toString();
甚至这样:
a = a.replaceAll(".$", "");
答案绝对不是!但是,substring
如果您想使用基于整数的索引按整数删除字符,则可以使用。尝试这个:
String a = "Hello";
a = a.substring(0,a.length()-1);
System.out.println(a);
不,您不能从字符串中减去,但是您可以使用子字符串实现您想要的:
String in="hello";
String out=in.substring(0, 4); //takes the characters 0,1,2,3 from in (i.e. h e l l)
System.out.println(out);