2016-06-13 2 views
0

좋아요, 그래서 나는 Arraylist에 접근하는 작은 프로그램을 만들고 있습니다.메서드 매개 변수 및 배열 목록

그래서 : 다음

public void setGroups(int groupA, int groupB, ArrayList< String > groups)

내 주요 방법의 몸에 내 ArrayList를 가지고 :

ArrayList groupSets = new ArrayList< String >( Arrays.asList("group1", "group2"));

그래서 제 질문은, 어떻게이 코드를 호출 할됩니다 내 주요 방법? 내 문제는 arraylist 부분입니다. 또한 groupA/B의 이러한 ints, 나는 ArrayList 밖으로 요소를 끌어 오기 위해 사용됩니다. 내가 ArrayList의 부분이 잘못 알고와의 int를 잘하거나 잘못뿐만 아니라, 그들은 잘 보이지만 내가 할 수 있다면 확실하지 오전을 제외하고

는 그래서

playGame(0, 1, ArrayList< String > groupSets);

? 같은 것 완전히 꺼져있어. 제발 도와주세요!

+1

왜 그 방법이 ArrayList에를 반환하지해야 하는가? 부작용이있는 setter 메서드를 사용하는 것이 나쁜 디자인 인 것 같습니다. –

답변

1

신고 및 전화가 다르기 때문에 질문이 약간 혼란 스럽습니다.

호출은 모든 종류의 정보를 포함 할 수 없습니다 :

setGroups(groupA, groupB, groups); 
+0

좋아요.이 방식으로 내 전화를 서식을 지정할 때 : setGroups (0, 1, groups); "정적이 아닌 메서드 setGroups (int, int, ArrayList )을 정적 컨텍스트에서 참조 할 수 없다는 오류가 발생합니다. – Smackelbap

+0

해당 메서드를 구현하는 클래스의 인스턴스를 만듭니다. – duffymo

0

그것의 단지

위의 부분적인 답변 모두 계약에
ArrayList<String> groupSets = new ArrayList<String>(); 
playGame(0, 1, groupSets); 
0

, 우리는이 포괄적 할 수 있는지 알아 보자

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

public class GroupStuff { 

    public static void main(String[] args) { 
     List<String> groupSets = new ArrayList<>(Arrays.asList("group1", "group2")); 
     GroupStuff gs = new GroupStuff(); 
     gs.setGroups(0,1,groupSets); 
    } 

    public void setGroups(int groupA, int groupB, List<String> groups) {  
     //Do whatever you do here... 
    } 
} 

그리고 ...

playGame(0, 1, ArrayList<String> groupSets); 

playGame(0, 1, groupSets);