1
私はcodingbatの問題の1つを解決しています。問題は次のようになります。 文字列と2番目の "word"文字列を指定すると、文字列の先頭に表示されますが、最初の文字は正確に一致する必要はありません。マッチでは、文字列の先頭を返すか、空の文字列を返します。したがって、文字列 "hippo"では "hi"という単語が "hi"を返し、 "xip"は "hip"を返します。単語は少なくとも長さ1になります。 私はそれを解決することはできませんが、以下のようにオンラインのソリューションとコードを見つけました。しかし、コードは、値がstartWord( "h"、 "ix")のようなときにコードが動作する理由はあります。単語の長さは2で、strの長さは1だけです。なぜコードtemp = str.substring(1、m)はまだ動作しますか?意志はエラーを出すだろうか?は、最初の文字列の最初の部分と2番目の文字列を一致させます
public String startWord(String str, String word) {
int n = str.length();
int m = word.length();
String temp;
if(n>=m){
temp = str.substring(1,m);
if(word.substring(1).equals(temp)){
return str.charAt(0)+temp;
}
}
return "";
}
'startWord(" h "、" ix ")'は、長さチェックのため空の文字列を返す必要があります。 'if(n> = m)' – munyul
ああ、ありがとう – Kingsfull123