2016-11-24 203 views
0

我正在做一個Java任務,要求我編寫一個方法,接收一個整數如1,1,3,4,4的字符串,並返回一個這些數字是唯一的如何接收字符串作爲輸入,並將int作爲輸出

public class test { 

    public static int main(String s, int r) { 
     String[] studentsarray = s.split(","); 
     int[] intArray = new int[studentsarray.length]; 
     for (int i = 0; i < studentsarray.length; i++) { 
      String numberAsString = studentsarray[i]; 
      intArray[i] = Integer.parseInt(numberAsString); 
     } 
     for (int j = 0; j < intArray.length; j++) { 
      for (int k = 0; k < intArray.length; k++) { 
       if (intArray[k] == intArray[j]) { 
        int result = 0; 
        return result; 
       } 
      } 
     } 
    } 
} 

這是我的程序。我不知道如何將字符串傳遞給方法。我應該在方法名稱和返回類型後面的括號中寫入字符串嗎?目前這是行不通的,我不知道爲什麼

+0

你閱讀(和理解)編譯器錯誤信息? –

+0

您的類還沒有* valid * main方法,JVM將從其中啓動程序。 –

回答

1

你的主要allways得到一個字符串數組...所以寫另一個方法或使用第一個參數(args [0])作爲您的輸入。

public int getUniqueInt(String ints){ 
    String[] strIntsArr = ints.split(','); 
    int[] intArr = new int[strIntsArr.length]; 

    for(int i = 0; i<intArr.length; i++){ 
     intArr[i] = Integer.getInteger(strIntsArr[i]); 
    } 

    //now you have all ints in the intArr and only have to get the unique one 
} 

編輯:

  • Java中的主要方法是永諾空隙(沒有返回)
  • Java中的主方法永諾等待一個String []作爲PARAMS
  • 一個java中的主要方法ist allways static and public

欲瞭解更多信息,請參閱ook this

你的主要應該是類似的東西:

public static void main(String[] args){ 
    String yourintString = "1,2,3,4,5"; 
    //or if you want it as paramter (commandline) 
    String yourintString = args[0]; 

    System.out.println("Unique int: "+ getUniqueInt(yourintString)); 
} 
+0

當我嘗試在一個程序中合併這兩種方法時,我無法使其工作。當我從方法中返回int時,我的'yourintString無法解析爲一個變量',在程序 – Tom

+0

的System.out,println行中檢查拼寫,我的樣本中有一個拼寫錯誤。如果你找不到這個錯誤,請將代碼發佈到你的主頁上 –

相關問題