sia*_*ooo 5 java arrays string
可能重复:
为什么索引是包容性的但是结束索引是独占的?
substring() method => String substring(int beginIndex, int endIndex)
描述:
返回一个新字符串,该字符串是此字符串的子字符串.第一个整数参数指定第一个字符的索引.第二个整数参数是最后一个字符的索引 - 1.
看看下面的代码:
String anotherPalindrome = "Niagara. O roar again!";
String roar = anotherPalindrome.substring(11, 15);
Run Code Online (Sandbox Code Playgroud)
输出: roar
现在,如果JVM没有减去int endIndex一个,我们可以只使用它substring(11,14),那不是更方便,更不容易出错(人性化的一面)吗?如果你没有仔细阅读说明,当你认为这endIndex只是正常的指数时,你可能只是半个小时(就像我做的那样)挠头.Java语言创建者将其减去一个的原因是什么?
它有几个优点:
s.substring(0, s.length())
Run Code Online (Sandbox Code Playgroud)
总是正确的.也:
s.substring(i, j)
Run Code Online (Sandbox Code Playgroud)
结果字符串的大小始终为j - i.更具体地说,s.substring(0, j)将始终返回j字符.最后这意味着如果你想n在索引后取字符,i你只需说:
s.substring(i, i + n)
Run Code Online (Sandbox Code Playgroud)
提取字符串的后缀(最后n字符)也更容易:
s.substring(s.length() - n, s.length())
Run Code Online (Sandbox Code Playgroud)
例如,提取文件扩展名:
s.substring(s.indexOf('.') + 1, s.length())
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1944 次 |
| 最近记录: |