在Java中,我有一个字符串:
Jamaica
我想删除字符串的第一个字符,然后返回amaica
我该怎么做呢?
在Java中,我有一个字符串:
Jamaica
我想删除字符串的第一个字符,然后返回amaica
我该怎么做呢?
当前回答
我遇到了这样一种情况,我不仅要删除第一个字符(如果它是#的话),还要删除第一组字符。
字符串myString = ###Hello World可以作为起点,但我只想保留Hello World。这可以按照以下方法完成。
while (myString.charAt(0) == '#') { // Remove all the # chars in front of the real string
myString = myString.substring(1, myString.length());
}
对于OP的情况,用if替换while,效果也很好。
其他回答
substring()方法返回一个新的String,其中包含当前包含在该序列中的字符的子序列。
子字符串从指定的开头开始,扩展到索引末尾的字符- 1。
它有两种形式。首先是
字符串子字符串(int FirstIndex)
这里,FirstIndex指定子字符串所在的索引 开始。此表单返回以。开始的子字符串的副本 FirstIndex并运行到调用字符串的末尾。
String子字符串(int FirstIndex, int endIndex)
这里,FirstIndex指定开始索引,endIndex指定 停止点。返回的字符串包含所有的字符 从开始索引到结束索引,但不包括结束索引。
例子
String str = "Amiyo";
// prints substring from index 3
System.out.println("substring is = " + str.substring(3)); // Output 'yo'
你可以这样做:
String str = "Jamaica";
str = str.substring(1, title.length());
return str;
或者概括地说:
public String removeFirstChar(String str){
return str.substring(1, title.length());
}
我遇到了这样一种情况,我不仅要删除第一个字符(如果它是#的话),还要删除第一组字符。
字符串myString = ###Hello World可以作为起点,但我只想保留Hello World。这可以按照以下方法完成。
while (myString.charAt(0) == '#') { // Remove all the # chars in front of the real string
myString = myString.substring(1, myString.length());
}
对于OP的情况,用if替换while,效果也很好。
另一个解决方案,你可以使用replaceAll和一些regex ^来解决你的问题。{1}(正则表达式演示)为例:
String str = "Jamaica";
int nbr = 1;
str = str.replaceAll("^.{" + nbr + "}", "");//Output = amaica
# #芬兰湾的科特林 它工作得很好。
tv.doOnTextChanged { text: CharSequence?, start, count, after ->
val length = text.toString().length
if (length==1 && text!!.startsWith(" ")) {
tv?.setText("")
}
}