次のプロンプトでメソッドを記述する必要があります。 "findStringメソッドを記述します。このメソッドは、指定された開始点で という行を見つけるために長さ1の文字列を取ります。これは目的の文字列の位置を返します。これはStringクラスのindexOfメソッドとは異なります。文字列のインスタンスが1つだけである必要があります。したがって、文字列が2回以上連続して表示されても、それらの値は返されません。例では、行の値は "aabaccb"です。メソッドfindStringを使用して文字の単一のインスタンスを検索する
これは私が持っているものです。
public int findString(String str, int start)
{
int x = line.indexOf(str, start);
int length = line.length()-1;
int z = 0;
if (x > -1 && (x == length || (line.charAt(x) != line.charAt(x + 1))))
{
return x;
}
if(x > -1 && (line.charAt(x) == line.charAt(x + 1)))
{
while (x > -1 && line.charAt(x) == line.charAt(x + 1))
{
line = line.substring(x+2);
z+= 3;
x = line.indexOf(str);
}
return x+z;
}
else
{
return -1;
}
}
のjavaの私の知識が限られているとして、私は、長い時間のために、この方法で立ち往生してきました。助けを借りれば喜んでいただけると思います。私は、strが2回以上連続して発生した場合、どのように説明するのか分かりません。
入出力の例はありますか? – Gatusko