2013-04-25 37 views
0

我有以下程序,它解析JSON並形成一個ArrayList,如圖所示。如何用一些預定義值初始化數組列表?

我怎樣才能initialze的MYSYMBOLS ArrayList的在這裏,所以它總是每次由一些預定義符號

有四個預定義的符號,即(「DYY」,「LIIO」,「AFD」,「XCF」 ),所以,這將是永遠的finalSymbolsList

一部分,我可以手動做這一步實現這個

List<String> finalSymbolsList = jw.getMySymbols(); 

finalSymbolsList.add("DYY"); 
finalSymbolsList.add("LIIO"); 
finalSymbolsList.add("AFD"); 
finalSymbolsList.add("XCF"); 

=================== ===

import java.util.List; 

import org.codehaus.jackson.map.ObjectMapper; 

import com.JsonDTO; 

public class Test { 

    public static void main(String args[]) { 

     try { 
      String request = "{\r\n" + " \"mySymbols\": [\r\n" 
        + "  \"TEST\",\"A\"\r\n" + " ]\r\n" + "}"; 

      ObjectMapper mapper = new ObjectMapper(); 
      JsonDTO jw = mapper.readValue(request, JsonDTO.class); 
      List<String> finalSymbolsList = jw.getMySymbols(); 

      System.out.println(finalSymbolsList); 

     } catch (Exception e) { 
      e.printStackTrace(); 
     } 

    } 

} 

=======================================

package com; 

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

public class JsonDTO { 

    private ArrayList<String> mySymbols = new ArrayList<String>(); 

    public ArrayList<String> getMySymbols() { 
     return mySymbols; 
    } 

    public void setMySymbols(ArrayList<String> mySymbols) { 
     this.mySymbols = mySymbols; 
    } 


} 

回答

1

試試這個

new String[] {"One","Two","Three","Four"} 
or 

List<String> places = Arrays.asList("One", "Two", "Three") 

或寫一個構造函數

public ClassName() 
{ 
    list = new ArrayList<String>(); 
    list .add("ONE"); 
    list .add("TWO"); 
    list .add("THREE"); 
    list .add("FOUR"); 
} 
0
List<String> places = Arrays.asList("DYY" , "LIIO" , "AFD" , "XCF") 
0

只需填寫構造函數列表

public JsonDTO() { 
    mySymbols.addAll(finalSymbolsList); 
} 
1

另外的雙支架初始化:

List<String> finalSymbolsList = new ArrayList<String>() {{ 
    add("DYY"); 
    add("LIIO"); 
    add("AFD"); 
    add("XCF"); 
}} 
0

另一種替代方法將是

List<String> finalSymbolsList = new ArrayList<String>(); 
Collections.addAll(finalSymbolsList ,"DYY" , "LIIO" , "AFD" , "XCF"); 
相關問題