2011-10-24 90 views
0

我想了解用戶輸入的短語是否至少有2個單詞。如果沒有,請不要讓他們輸入一個詞組,直到他們輸入一個至少有2個詞。嘗試查找字符串中是否至少有2個單詞

到目前爲止,我的代碼是:它可以成功檢測到他們是否輸入了2個單詞,併成功檢測到他們是否第一次輸入2個單詞,但是如果他們再次輸入2個單詞,程序退出。

private static void stringfunctions() { 
    String phrase; 
    int count = 0; 
    Scanner input = new Scanner(System.in); 

    while (count < 2) { 
     System.out.println("Please enter a multiple word phrase: "); 
     phrase = input.nextLine(); 
     String[] arrPhrase = phrase.split(" "); 
     for (int i = 0; i < arrPhrase.length; i++) { 
      if (arrPhrase[i].equals(" ")) { 
      } else { 
       count++; 
      } 
     } 

    } 
+0

這應該被標記爲家庭作業嗎? – Marvo

+0

聽起來像家庭作業,所以這裏有一個提示:使邏輯來找出是否至少有兩個單詞在輸入到一個單獨的方法。它會使它更容易使用它。另外,請記住,這可能會給多個空格按順序帶來誤報,並且會忽略諸如製表符等內容。您可能需要查看正則表達式,與他們一起玩,看看您是否可以想出一個檢測您的標準的正則表達式。 –

+0

你將要查找正則表達式,以便能夠分割多個空白字符。在這一點上,你不需要做一個計數,你應該能夠從數組的大小中檢測單詞的數量(你應該使用布爾變量來控制循環 - inputTwoWords或其他)。另外 - 試着考慮爲什麼用戶在第二次輸入內容時只需輸入1個單詞,如果這導致程序退出。 –

回答

1

由於這是作業,我不會給你答案,但是當你在循環中行進時,密切關注count的值。

+0

謝謝,我並不期待直接的答案 – MJ93

3

測試後重置計數。問題是一旦計數結束,while循環終止2

相關問題