내 질문은 나중에 프로그램에서 루프 또는 arraylist 루프에 초기화되는 변수를 추가 할 수 있습니다.나중에 arraylist 또는 루프를 사용하여 배열에 초기화되는 변수 추가
Example:
JButton btn1, btn2, btn3;
...
private void createIco(){
btn1 = new JButton(ico1); // ico1 is a ImageIcon-Object
btn2 = new JButton(ico2);
btn3 = new JButton(ico3);
}
// so i have now the instances of the buttons and now i want them store with
// a loop in a array or arraylist.
private void createBtnArray(){
// here a array
JButton[] buti = new JButton[3];
//how i can store them ? which loop is good or is this the wrong way to
//do ?
}
편집 : Thx 지금까지 모두.
예 배열을 만들고이 배열을 사용하면 문제가 없습니다. 내 손으로 모든 일을함으로써 잘 일해도 롤. 하지만 내 포인트 더 같이있다 :
내가 이런 바보 같은 방법으로 많은 개체 만들었 말할 수 있습니다 :
public class Test extends JFrame {
private BufferedImage cImg, cImg1, cImg2 cImg3 ............
private ImageIcon ico1, ico2, ico3, ico4, ...............
private JButton btn1, bnt2, btn3, btn4, ................
...........
public Test(){
initUI();
}
private void initUI(){
// this methods will initialize all objects above
loadImg();
cropImg();
createIcon();
createButton();
...............
createArray1();
}
public static void main(String[] args){
Test start = new Test();
}
지금 나는 모든 것을 다시 리메이크 수있어 사용 배열 대신 하나의 개체와 나는 그것을했고 그것이 효과가 있었다. 하지만 나는 그것들을 이미 만들었고 쉬운 루프로 생각했기 때문에 배열이나리스트에 모든 것을 넣을 수 있었고, 다른 배열을 사용하여 다른 객체를 얻을 수 있었기 때문에 이것은 두 배의 작업이라고 생각합니다.
내 소망은 : JButton [] btnAll = new JButton [100]; 그런 다음 루프와 함께 얻을 수있는 모든 인스턴스가 이미 내가 만든 프로그램에서 사용하고 createArray1(), 심지어 내가 정확히 어디 초기화 된 알고 dotn. 나는 그들이 만들어 졌다는 것을 알고 있습니다.
내 다음 단계는 개체 배열에 모든 배열을 다시 배치하여 1 점만 액세스하도록하려는 것입니다. 이처럼 : Object [] all = new Object [3]; 모두 [0] = btnAll; all [1] = icoAll; all [2] = imgAll;
그래서 마지막으로 다음과 같이 보였습니다. JButton test = all [0 [2]];
그래서 포장 된 버전 만 호출 할 수 있습니다.
PS : 네, 배열, 목록에 갈 것이고, 내가이가
왜 처음에는'btn1','btn2' 및'btn3'을 사용하게 되었습니까? 처음부터 배열 (또는 목록)을 사용하기 만하면됩니다. –
별도의 변수가있는 이유는 무엇입니까? 왜 그냥'JButton [] buttons' 필드가 없습니까? –
당신은 정상적으로 저장할 수 있습니다. 'buti [0] = btn1; buti [1] = btn2; buti [2] = btn3;'함수를 사용하면'buti' 변수 클래스 인스턴스를 사용합니다. –