Initialize a CollectionTag(s): Language
The regular way
import java.util.List; import java.util.ArrayList; public class InitCollections { public static void main(String args[]) { ArrayList<String> list = new ArrayList<String>(); list.add("Bart"); list.add("Lisa"); list.add("Marge"); list.add("Barney"); list.add("Homer"); list.add("Maggie"); dump(list); } public static void dump(List<String> list) { for (String s:list) { System.out.println(s); } } }
import java.util.List; import java.util.ArrayList; public class InitCollections { static ArrayList<String> list = new ArrayList<String>(); static { list.add("Bart"); list.add("Lisa"); list.add("Marge"); list.add("Barney"); list.add("Homer"); list.add("Maggie"); } public static void main(String args[]) { dump(list); } public static void dump(List<String> list) { for (String s:list) { System.out.println(s); } } }
Careful with this one because it can cause memory leak.
import java.util.List; import java.util.ArrayList; public class InitCollections { static ArrayList<String> list = new ArrayList<String>() {{ add("Bart"); add("Lisa"); add("Marge"); add("Barney"); add("Homer"); add("Maggie"); }}; public static void main(String args[]) { dump(list); } public static void dump(List<String> list) { for (String s:list) { System.out.println(s); } } }
import java.util.List; import java.util.Arrays; public class InitCollections { public static void main(String args[]) { Listlist = Arrays.asList("Bart", "Lisa", "Marge", "Homer", "Maggie"); dump(list); } public static void dump(List<String> list) { for (String s:list) { System.out.println(s); } } }
Using Static import
First a small static class
package com.rgagnon.howto; import java.util.Arrays; import java.util.List; public class CollectionUtils { public static <T> List<T> List(T...elems){ return Arrays.asList( elems ); } }
package com.rgagnon.howto; import static com.rgagnon.howto.CollectionUtils.List; import java.util.List; public class InitCollections { public static void main(String args[]) { List<String> list = List("Bart", "Lisa", "Marge", "Homer", "Maggie"); dump(list); } public static void dump(List<String> list) { for (String s:list) { System.out.println(s); } } }
mail_outline
Send comment, question or suggestion to howto@rgagnon.com
Send comment, question or suggestion to howto@rgagnon.com