2011-05-04 67 views
0
ArrayList<String> constraints_list=new ArrayList<String>(); 
    public void setConstraints(ArrayList<String> c) 
    { 
     c = constraints_list; 
     constr = true; 
    } 

我想要的ArrayList爲C的ArrayList的constraint_list ... 怎麼辦?ArrayList的<String>到ArrayList中<string>在Java

+0

我假設這是Java。如果不是,請適當修改您的標籤。 – 2011-05-04 05:49:46

回答

2

這並不完全清楚你想要做什麼。但是,對象引用是通過Java中的值傳遞的,因此設置值c(如代碼中所示)將不起作用。設置c從一個實例變量的典型方式是寫一個getter,而不是setter方法:

public ArrayList<String> getConstraints() { 
    return constraints_list; 
} 

然後,您可以說:

ArrayList<String> c = getConstraints(); 

如果在另一方面,你正在試圖做的相反(從傳入的參數集constraints_list),那麼你的任務是南轅北轍:

public void setConstraints(ArrayList<String> c) { 
    constraints_list = c; 
    constr = true; 
} 

你也應該考慮是否是更好地做t的副本他列出,在這種情況下你可以這樣做:

public void setConstraints(ArrayList<String> c) { 
    constraints_list = new ArrayList<String>(c); 
    constr = true; 
} 
相關問題