Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java String类的substring()函数_Java_String - Fatal编程技术网

Java String类的substring()函数

Java String类的substring()函数,java,string,Java,String,我正在解决以下问题:给定一个字符串和第二个单词字符串,如果单词出现在字符串的前面,我们会说它与字符串匹配,但它的第一个字符不需要完全匹配。在匹配时,返回字符串的前面,或者返回空字符串。所以,hippo这个字符串返回hi,xip返回hip。单词的长度至少为1 startWord("hippo", "hi") → "hi" startWord("hippo", "xip") → "hip" startWord("hippo", "i") → "h" 我的代码如下: front=str.su

我正在解决以下问题:给定一个字符串和第二个单词字符串,如果单词出现在字符串的前面,我们会说它与字符串匹配,但它的第一个字符不需要完全匹配。在匹配时,返回字符串的前面,或者返回空字符串。所以,hippo这个字符串返回hi,xip返回hip。单词的长度至少为1

startWord("hippo", "hi") → "hi" 

startWord("hippo", "xip") → "hip" 

startWord("hippo", "i") → "h"
我的代码如下:


front=str.substring0,word.length是返回值。这是一个逻辑问题,而不是编码问题。作为一名业余程序员,我正在努力学习逻辑。谢谢你这么容忍我

str.substring0,str.length;将是原始字符串如果str.length>=1&&str.substring1,word.length-1.equalsword.substring1是错误的,因此front从未获得分配给itlearn的值以进行调试-将此System.out.printlnstr.substring1,word.length-1;System.out.printlnword.substring1;在if语句之前写入代码中是否确定要在其中写入word.length-1?我觉得这不太对。仔细阅读Javadoc中的substringmethod,看看是否能找出原因。我在word.length-1中做错了。谢谢你指出并感谢大家宝贵的时间。你能告诉我哪些输入和输出对你来说是错误的吗?我认为你不应该做str.substring1,word.length-1。试试str.substring1,改为word.length?我想这不包括第二个长度。给你!虽然我知道第二个论点是排他性的,但我把它搞砸了。谢谢你!如果答案对你有帮助,你能帮我把它标出来吗?
public String startWord(String str, String word) {
    if (str.substring(1, word.length()).equals(word.substring(1, word.length()))) {
        return str.substring(0, word.length);
    } else {
        return "";
    }
}
public String startWord(String str, String word) {
    if (str.substring(1, word.length()).equals(word.substring(1, word.length()))) {
        return str.substring(0, word.length);
    } else {
        return "";
    }
}