Java 解释代码以及为什么要减去子字符串

Java 解释代码以及为什么要减去子字符串,java,Java,有人能用一个单词示例和一步一步的分析来解释为什么第二个子串语句。程序检查前两个字母是否与后两个字母匹配。例如,单词被编辑。str.substring(len-2,len)要求输入字符串的最后两个字母 要获取最后两个字母,需要子字符串的起始值为长度(5)减去2个字符,即3个字符。这是因为Java中的索引从0开始。例如,字符串“horse”中字符的位置为01234(即,“h”位于索引0,“o”位于索引1等),长度为5 String.subString的第二个参数用于结束索引,它是独占的。这意味着第一

有人能用一个单词示例和一步一步的分析来解释为什么第二个子串语句。程序检查前两个字母是否与后两个字母匹配。例如,单词被编辑。

str.substring(len-2,len)
要求输入字符串的最后两个字母

要获取最后两个字母,需要子字符串的起始值为长度(5)减去2个字符,即3个字符。这是因为Java中的索引从0开始。例如,字符串“horse”中字符的位置为01234(即,“h”位于索引0,“o”位于索引1等),长度为5

String.subString的第二个参数用于结束索引,它是独占的。这意味着第一个字符位置不是所需子字符串的一部分。在本例中,它将是长度,因为该长度比字符串末尾高1个字符

如果你把所有这些放在一起,你会得到以下结果:

public boolean frontAgain(String str)
{
int len = str.length();
if(len >= 2)
    return str.substring(0, 2).equals(str.substring(len-2, len));
else
    return false;
}

.Max Zoom的文档,但我要问的是str.substring(len-2,len)的作用。它返回最后两个字符,因为
len
(此时)是字符串中的总字符数。@lordzee您肯定已经检查了。
String str = "horse"
int length = str.length() // 5
String lastTwoChars = str.substring(length-2, length); // from position 3 to 5
System.out.println(lastTwoChars); // would show you "se"