Cal*_*010 199 java string substring
在Java中,我有一个字符串:
Jamaica
Run Code Online (Sandbox Code Playgroud)
我想删除字符串的第一个字符,然后返回 amaica
我该怎么做?
mar*_*cog 312
使用substring()带有参数的函数1来获取从位置1(在第一个字符之后)到字符串结尾的子字符串(保留第二个参数默认为字符串的整个长度).
"Jamaica".substring(1);
Run Code Online (Sandbox Code Playgroud)
Ahm*_*otb 61
public String removeFirstChar(String s){
return s.substring(1);
}
Run Code Online (Sandbox Code Playgroud)
小智 53
使用substring()并提供要从前面修剪的字符数.
String value = "Jamaica";
value = value.substring(1);
Run Code Online (Sandbox Code Playgroud)
答案:"amaica"
Eri*_*ski 46
在删除之前,使用Java三元运算符快速检查您的角色是否存在.只有在存在时才会删除前导字符,如果传递空字符串,则返回blankstring.
String header = "";
header = header.startsWith("#") ? header.substring(1) : header;
System.out.println(header);
header = "foobar";
header = header.startsWith("#") ? header.substring(1) : header;
System.out.println(header);
header = "#moobar";
header = header.startsWith("#") ? header.substring(1) : header;
System.out.println(header);
Run Code Online (Sandbox Code Playgroud)
打印:
blankstring
foobar
moobar
Run Code Online (Sandbox Code Playgroud)
String a = "Cool";
a = a.replace("o","");
//variable 'a' contains the string "Cl"
Run Code Online (Sandbox Code Playgroud)
String b = "Cool";
b = b.replaceFirst("o","");
//variable 'b' contains the string "Col"
Run Code Online (Sandbox Code Playgroud)
cod*_*ict 18
您可以使用仅接受开始索引的类的子字符串方法,String并返回以指定索引处的字符开头并延伸到字符串末尾的子字符串.
String str = "Jamaica";
str = str.substring(1);
Run Code Online (Sandbox Code Playgroud)
Chr*_*odd 11
在Java中要理解的关键是字符串是不可变的 - 你无法改变它们.因此,谈论'从字符串中删除字符'是没有意义的.而是使用您想要的字符创建一个新字符串.此问题中的其他帖子为您提供了各种方法,但重要的是要了解这些不会以任何方式更改原始字符串.您对旧字符串的任何引用将继续引用旧字符串(除非您将它们更改为引用其他字符串),并且不会受新创建的字符串的影响.
这对性能有很多影响.每次"修改"字符串时,实际上都是在创建一个新的字符串,其中隐含了所有开销(内存分配和垃圾回收).因此,如果您想对字符串进行一系列修改并且只关心最终结果(一旦您修改它们,中间字符串将会死亡),使用StringBuilder或StringBuffer可能更有意义.
Ree*_*ore 10
public String removeFirst(String input)
{
return input.substring(1);
}
Run Code Online (Sandbox Code Playgroud)
小智 9
你可以这样做:
String str="Jamaica";
str=str.substring(1, title.length());
return str;
Run Code Online (Sandbox Code Playgroud)
public String removeFirstChar(String str){
return str.substring(1, title.length());
}
Run Code Online (Sandbox Code Playgroud)
子()方法返回一个包含一个新的字符串序列当前包含在该序列的字符.
所述子开始在指定的start,并且延伸到在该字符index end - 1.
它有两种形式.首先是
String substring(int FirstIndex)这里,FirstIndex指定子字符串将开始的索引.此表单返回从FirstIndex开始并运行到调用字符串末尾的子字符串的副本.
String substring(int FirstIndex, int endIndex)这里,FirstIndex指定起始索引,endIndex指定停止点.返回的字符串包含起始索引中的所有字符,最多但不包括结束索引.
String str="Amiyo";
// prints substring from index 3
System.out.println("substring is = " + str.substring(3)); // Output "yo'
Run Code Online (Sandbox Code Playgroud)
小智 7
您可以简单地使用substring().
String myString = "Jamaica"
String myStringWithoutJ = myString.substring(1)
Run Code Online (Sandbox Code Playgroud)
方法中的索引指示我们从哪里获取结果字符串,在本例中,我们在第一个位置之后获取它,因为我们不希望“Jamaica”中出现“J”。
我遇到了一种情况,我不仅要删除第一个字符(如果它是#,还要删除第一组字符。
String 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());
}
Run Code Online (Sandbox Code Playgroud)
对于 OP 的情况,替换while为if并且它也可以工作。
| 归档时间: |
|
| 查看次数: |
395434 次 |
| 最近记录: |