2011-09-26 153 views

回答

11

示例 -

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

public class Test { 

List<String> list = null; 

public List<String> getList() { 
    return list; 
} 

public void setList(List<String> list) { 
    this.list = list; 
} 

public static void main(String[] args) { 
    Test test = new Test(); 
    List<String> sample = new ArrayList<String>(); 
    sample.add("element 1"); 
    test.setList(sample); 
    List<String> sample1 = test.getList(); 
} 
} 
+0

非常好的答案+1 :) –

-1

嘗試這些

public ArrayList getArrayList() { 
    return arraylist; 
} 

public void setArrayList(ArrayList arraylist) { 
    this.arraylist = arraylist; 
} 
+1

您的二傳手沒有做什麼它打算,對吧? –

+0

@ElijahSaounkine謝謝,糾正它 –

+0

@RahulChoudhary仍然需要糾正檢查我的答案。 –

0

我不熟悉的Android。 但是在JAVA中,如果你想使用set和get方法,你需要首先聲明List。

private List arrayList = new ArrayList(); 

public List getArrayList() { 
    return arrayList; 
} 

public void setArrayList(List arrayList) { 
    this.arrayList = arrayList; 
} 
+0

我還沒有看到這種類型的聲明.... private List arrayList = new arrayList; –

+1

對不起,錯過類型。 –

+0

仍然失蹤哥們結帳我的答案應該如何。 –

2
ArrayList<String> arrList = new ArrayList<String>(); 

    public ArrayList<String> getArrList() { 
     return arrList; 
    } 

    public void setArrList(ArrayList<String> arrList) { 
     this.arrList = arrList; 
    } 
1

一般getter和setter方法是變量賦值,並從該

There is not any difference of getter and setter methods for arraylist or for int of a class 

ArrayList<String> arrList; 

    public ArrayList<String> getArrList() { 
     return arrList; 
    } 

    public void setArrList(ArrayList<String> arrList) { 
     this.arrList = arrList; 
    } 

相同的變量值詮釋

int id; 

    public int getId() { 
     return id; 
    } 

    public void setId(int id) { 
     this.id = id; 
    } 
4

爲了更好的封裝/ OO設計我會做以下

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

public class TestListGetterSetter { 
List<String> list = new ArrayList<>(); 

//Return copy of the list 
public List<String> getList() { 
    return new ArrayList<>(list); 
} 

// Copy source list into destination list 
public void setList(List<String> listToBeSet) { 
    if (listToBeSet != null) 
     this.list.addAll(listToBeSet); 
} 

public static void main(String[] args) { 
    TestListGetterSetter testListGetterSetter = new TestListGetterSetter(); 

    List<String> clientList = new ArrayList<>(Arrays.asList("foo", "bar", "HiHa")); 

    testListGetterSetter.setList(clientList); 
    System.out.println("TestListGetterSetter.list before clientList modification = " + testListGetterSetter.getList()); 

    //Now you can change "clientList" without affecting testListGetterSetter object 
    clientList.add("1"); 
    System.out.println("clientList modified List = " + clientList); 
    System.out.println("TestListGetterSetter.list after clientList modification = " + testListGetterSetter.getList()); 
    } 
} 
+0

糾正我,如果我錯了,但在所有情況下聽起來都不正確,因爲有時此API的用戶可能想使用getList()獲取列表並添加一些元素。你怎麼看? –

0

請一定要試試這個

public static ArrayList<books> al = new ArrayList<books>(); 
    books book=new books(id,name,type); 
       book1 b1=new book1(id,name,type); 
       al.add(book); 
       al.add(book1); //error at book1 
+0

book1是使用相同pakage的同一個類。 – user6497465

+0

我想用一個數組列表對象來訪問它們 – user6497465