我被困在解決這個問題。下面是我想到的最多的:Java Wrtie an isSubstring方法
問題:編寫布爾方法public static boolean isSubstring(String x,String y)以兩個字符串x和y作爲參數並返回true,如果只有一個字符串x是a字符串y的子字符串。字符串x是字符串y的子字符串當且僅當x中的所有字符都在y中連續出現。對於這個問題,您可以使用的唯一String方法是length()和charAt()。如果您使用任何其他字符串方法,您將不會收到此問題的功勞。
import java.util.Scanner;
public class question {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("Enter String 1:");
String String1 = input.nextLine();
System.out.print("Enter String 2:");
String String2 = input.nextLine();
if(isSubstring(String1,String2)){
System.out.println("True");
} else {
System.out.println("False");
}
}
public static boolean isSubstring(String x, String y) {
int count = 0, xIndex = 0, yIndex = 0;
boolean sub = false;
while(!sub && yIndex < y.length()){
if(y.charAt(yIndex) == x.charAt(yIndex)){
xIndex++;
count++;
} else {
if(count == x.length()){
sub = true;
}
}
yIndex++;
}
return sub;
}
}
題外話:類以大寫字母開頭。 – ManoDestra
首先寫下你如何解決問題的方法。 –
@Reis - 具體是什麼問題?在某些情況下,發佈的代碼是否工作,或者是否存在錯誤,或者發佈了錯誤的答案?請給我們一個具體的問題...... – Hatley