2014-10-17 62 views
0

你好驚人的人的stackoverflow。用ArrayList參數+爲每個循環編寫一個方法

這是我第一次發帖,所以如果我犯任何錯誤,我會事前道歉!

此分配的問題是:

收件稱爲最長一個靜態方法的方法,其被傳遞的字符串的ArrayList,並且其返回的最長字符串的長度的陣列中,一個int。 (當然有幾個可能有最長的價值)。您必須在解決方案中使用for-each循環。

這裏是我的代碼:

public static int longest(String[] data){ 

int longString = 0; 
for(String s : data) 
{ 
    if (s.length() > longString) 
     longString = s.length(); 
} 

return longString; 

} 

我一直得到廣大編譯器錯誤在硬件提交盒 - 沒有細節。 我看了我的代碼一個小時,我找不到什麼是錯的。 !對我來說很好:-(

任何和所有的意見,將不勝感激謝謝

+0

您需要將某些東西包裝在類中。如果它包裝在一個類中,請檢查它們是否需要包聲明。 – 2014-10-17 20:25:06

+2

編譯器錯誤說的是什麼? – manouti 2014-10-17 20:25:17

+0

你不應該提交你的代碼,甚至不嘗試編譯它。編譯它,並嘗試理解從編譯器獲得的特定錯誤消息。如果你不理解它,請發佈它。 – 2014-10-17 20:27:46

回答

0

此代碼編譯就好但是,它並沒有回答要求 - !你的方法應該收到ArrayList

public static int longest(ArrayList<String> data){ 

    int longString = 0; 
    for(String s : data) { 
     if (s.length() > longString) 
      longString = s.length(); 
    } 

    return longString; 
} 
0

這可能是因爲這個問題,您需要使用字符串的ArrayList的,而不是字符串數組的

試試這個代碼:

public static int longest(ArrayList<String> data) { 

    int longString = 0; 
    for (String s : data) { 
     if (s.length() > longString) 
      longString = s.length(); 
    } 

    return longString; 

} 

編輯: 你必須把這個代碼的類中,並有運行它方法。 您的代碼將如下所示:

import java.util.ArrayList; 

public class LongestString { 

    public static int longest(ArrayList<String> data) { 

     int longString = 0; 
     for (String s : data) { 
      if (s.length() > longString) 
       longString = s.length(); 
     } 

     return longString; 

    } 

    public static void main(String[] args) { 
     // ... 
    } 

} 
+0

這是字符串的長度,不是列表 – lucasls 2014-10-17 20:45:56

+0

謝謝!幸運的是,這項任務沒有任何其他問題。 – obae 2014-10-18 02:10:24

相關問題