Thursday, 23 February 2012

How to convert a string array to arraylist??

ans : If the concrete implementation doesn't matter, you can use Arrays.asList() to convert your array to a List.

exp:
        import java.util.Arrays;
        import java.util.List;
        import java.util.ArrayList;
        public class StringArrayTest {
           public static void main(String[] args) {
              String[] words = {"ace", "boom", "crew", "dog", "eon"};    
              List<String> wordList = Arrays.asList(words);    
               for (String e : wordList)  {          
                      System.out.println(e);
                }    
            }
        }

expla:-
       
 There are some important things to note with the solutions given above:

Garrett's solution, with Arrays.asList() is efficient because it doesn't need to copy the content of the array. This method returns a List that is a "view" onto the array - a wrapper that makes the array look like a list. When you change an element in the list, the element in the original array is also changed. Note that the list is fixed size - if you try to add elements to the list, you'll get an exception.

Ernest's solution: new ArrayList(Arrays.asList(myArray)); copies the content of the array to a new ArrayList. The copy is ofcourse independent of the array, and you can add, remove etc. elements as you like.

Janarthan's solution, with Collections.addAll(myList, myStringArray); is essentially the same as Ernest's solution.

If you only need read access to the array as if it is a List and you don't want to add or remove elements from the list, then use Garrett's solution. Otherwise use Ernest's or Janarthan's solution.

No comments:

Post a Comment