好吧,我目前正在試圖製作一個程序,以用戶的電子郵件地址的形式輸入,並檢查它是否有'@'。我想用循環遍歷用戶輸入的整個字符串,並檢查每個字符的'@'。關於如何開始,我有點失落。用循環驗證用戶輸入
我所做的是使用for循環遍歷用戶輸入的整個字符串。然後我使用一個do/while循環來執行某一行代碼,直到用戶輸入一個有效的電子郵件。但是,無論它是否具有「@」,它似乎總是有效的。我也想檢查它是否只包含1'@'。我有點失落,因爲你可以看到,但任何幫助,將不勝感激!
import java.util.Scanner;
class Test
{
public static void main(String args[])
{
System.out.print("Enter an email address ");
Scanner scan = new Scanner(System.in);
String input = scan.nextLine();
valid c = new valid(input);
}
}
class valid
{
String scan2;
char amper = '@';
int i;
valid(String scan1)
{
scan2 = scan1;
for (i = scan2.length() - 1 ; i <= 0; i--)
do
{
System.out.print("That input is invalid");
} while(scan2.indexOf(i) != amper);
System.out.println("That input is valid");
}
}
只需使用'string.contains?(」 @「)' – Arc676
我知道,但它是一個任務的一部分我們。正在學習如何熟悉運行循環中的字符串 –
您是否瞭解['indexOf'](http://docs.oracle.com/javase/7/docs/api/java/lang/String.html#的indexOf(INT))的回報? – sam