java从字符串中获取最后几个字符
我有一个包含n个字符的java字符串
如何从该字符串中提取最后的几个字符
我在网上找到了这段代码,它提取了前几段代码,但我不理解它,所以我无法修改它
有人能帮我吗
String upToNCharacters = s.substring(0, Math.min(s.length(), n));
你可以在下面搜索框中键入要查询的问题!
我有一个包含n个字符的java字符串
如何从该字符串中提取最后的几个字符
我在网上找到了这段代码,它提取了前几段代码,但我不理解它,所以我无法修改它
有人能帮我吗
String upToNCharacters = s.substring(0, Math.min(s.length(), n));
# 1 楼答案
一根绳子。substring()重载接受一个参数—起始索引的索引。由此,您可以轻松实现您的功能:
# 2 楼答案
看看substring documentation,它基本上是返回调用它的字符串的子字符串,其中来自第一个参数指定的索引的子字符串和结束于第二个参数
因此,要获得最后几个字符,请将开始索引和结束索引修改为所需的值。此方法还有另一个版本,它只接受一个参数,即begin索引,这可能对您有用
# 3 楼答案
试试看
# 4 楼答案
这段代码与您想要的正好相反。现在让我们看看为什么以及如何修改它
快速解决方案
您可以按如下方式修改代码以执行所需操作:
解释
根据official documentation,Java
String
类有一个名为substring()
的特殊方法。 方法的签名如下(带重载):第一种方法接受2个参数作为输入:
beginIndex
:子字符串的开始索引,包含李>endIndex
:子字符串的结束索引,独占李>第二重载将自动考虑字符串的长度为{{< CD4}},从而返回“最后一部分”
这两种方法都根据刚才描述的输入参数返回一个新的对象实例
如何从字符串中提取正确的子字符串?提示是按字符串的原样思考:一个字符数组。因此,如果您有字符串
Hello world
,您可以从逻辑上将其视为:如果选择仅提取字符串
world
,则可以调用substring
方法,给出正确的“数组”索引(记住endIndex
是独占的!):在您提供的代码段中,您提供了一个特殊的endIndex:
考虑到字符串的长度,这完全取决于nth char索引(以避免越界条件)
在这个答案的开头,我们所做的只是调用这个方法,并为它提供子字符串的开始索引,同时考虑到如果您选择了错误的索引,可能会出现溢出情况
请注意,任何
String
对象实例都可以利用此方法,请查看this示例,例如:正如您所看到的,当然,即使是
"abc"
也有substring
方法# 5 楼答案