2011-10-10 153 views
5

我想要做的是需要轉換ArrayList<String>[]ArrayList<Integer>[]的應用程序,我也用這個:轉換的ArrayList <String>到一個ArrayList <Integer>或整數數組

ArrayList<String>[] strArrayList; 
int ArrayRes = (int) strArrayList[]; 

但是這個代碼讓我的錯誤,任何人都可以幫助我?

任何建議將讚賞名單上

+0

你怎麼想字符串的ArrayList的數組轉換成單個int?問題很模糊。 – HashimR

+0

Ali Ghanei,你想解析你的字符串arraylist到整數arraylist?簡單地說,你問如何將你的ArrayList的所有字符串值轉換爲int值? –

+1

@HashimR答:問題並不清楚,它很清楚,我只是問我的問題。 –

回答

-7

迭代器,並把它解析爲整數:

(警告:未測試)

ArrayList<String> strArrayList; 
int[] ArrayRes = new int[strArrayList.size()]; 

int i = 0; 
for (String s : strArrayList) 
{ 
    ArrayRes[i++] = Integer.parseInt(s); 
} 

然後,您可以將其轉換爲一個int值根據你希望如何連接它們。

+0

其要求的ArrayList轉換爲int不是int [] –

0

你想投的ArrayList對象的數組爲int。當然你會得到一個錯誤。

首先,你需要一個普通的舊ArrayList,不是的ArrayList列數組。

其次,您使用Integer.parseInt()String對象轉換爲int s。 int是一個基本類型,而不是一個類類型,和肯定不是String一個超類。

-1

你可以施放字符串列表整數這樣的:

ArrayList<Integer> numbers = new ArrayList<Integer>(); 

for(int i = 0; i < strArrayList.size(); i++) { 
    numbers.add(Integer.parseInt(strArrayList.get(i))); 
} 
+0

strArrayList [I]會給你一個'ArrayList'類型,這是不是'Integer.parseInt' – bdares

+0

的ArrayList 有效的參數????你確定 ??我認爲這將是ArrayList的而ArrayList的

5

這個怎麼樣

import java.util.ArrayList; 
    import java.util.Arrays; 
    import java.util.List; 

    public class sample7 
    { 
     public static void main(String[] args) 
     { 

      ArrayList<String> strArrayList = new ArrayList<String>(); 
      strArrayList.add("1"); 
      strArrayList.add("11"); 
      strArrayList.add("111"); 
      strArrayList.add("12343"); 
      strArrayList.add("18475"); 
      List<Integer> newList = new ArrayList<Integer>(strArrayList.size()) ; 
      for (String myInt : strArrayList) 
      { 
       newList.add(Integer.valueOf(myInt)); 
      } 
      System.out.println(newList); 
     } 

    } 
11

定義,這將ArrayList中的所有 字符串值轉換成整數的方法。

private ArrayList<Integer> getIntegerArray(ArrayList<String> stringArray) { 
     ArrayList<Integer> result = new ArrayList<Integer>(); 
     for(String stringValue : stringArray) { 
      try { 
       //Convert String to Integer, and store it into integer array list. 
       result.add(Integer.parseInt(stringValue)); 
      } catch(NumberFormatException nfe) { 
       //System.out.println("Could not parse " + nfe); 
       Log.w("NumberFormat", "Parsing failed! " + stringValue + " can not be an integer"); 
      } 
     }  
     return result; 
    } 

,簡單地調用該方法,如

ArrayList<Integer> resultList = getIntegerArray(strArrayList); //strArrayList is a collection of Strings as you defined. 

編碼愉快:)

+0

謝謝你,它的工作了。 –

+0

使用'result.add(Integer.parseInt(stringValue.trim());'來避免空格造成不必要的異常錯誤。 – lifebalance

相關問題