gpt4 book ai didi

java - 为什么这不是运行时错误

转载 作者:行者123 更新时间:2023-11-29 03:14:49 24 4
gpt4 key购买 nike

substring 返回一个从指定索引号开始一直到结尾的字符串。你能告诉我为什么以下不是运行时错误吗?

String s = "你好";s.substring(5);

字符串的长度是 5 但最后一个索引是 4 那么为什么我没有得到范围的异常?当我说 s.substring(6);

时,我得到了一个

请帮忙!

最佳答案

如果您在最后一个索引之上调用索引 1,

s.substring() 实际上不会抛出方法。这非常有用,因为这样您就不必担心这样的 forloops:

for(int i = 0; i < string.length - 1; i++) {
System.out.println(s.substring(i, i+1));
}

不需要对最后一个索引进行特殊检查,它会正常工作。

你可以看到 Java Docs对于更技术性的答案 - s.substring() 只会在索引大于字符串的 LENGTH 时抛出错误,而不仅仅是索引的数量。

参见 this question了解更多信息。

关于java - 为什么这不是运行时错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27339873/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com