차근차근/JAVA JSP

향상된 For문 [ for(:)]

예쁜꽃이피었으면 2014. 8. 28. 10:59

http://kaludin.egloos.com/2261361


class PlafFrame extends JFrame
{
 public PlafFrame()
 {
  setTitle("PlafTest");
  setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
  // JPnale을 상속하는  패널 생성
  buttonPanel = new JPanel();
  //설치된 모든 룩앤필 구현을 나열하기위한 처리(객체의 배열을 얻음)
  UIManager.LookAndFeelInfo[] infos = UIManager.getInstalledLookAndFeels();
  for(UIManager.LookAndFeelInfo info : infos)  <== 이부분
   //룩앤필의 표시이름과, 룩앤필의 구현 클래스 이름을 반환
   makeButton(info.getName(), info.getClassName());
  //패널을 프레임에 추가
  add(buttonPanel);

 

----------------------------------------------

for문 형식이 예를들면, for(int i=0; i<100; i++) 이런식으로 알고있는데..

저위에 for문은 어떻게 해석해야 하는걸까요.. ㅠ.ㅠ

 

고수님들 부탁드립니다.!!!






re: 자바 For 문 (Java For) 관련 질문입니다...



1.5에서 추가된 향상된 for문이네요.

만약에 int locationEle [] = new int[10]; 이라는 배열을 하나 선언해두고 반복문을 돌리고자 하면

 

for(int i=0 ; i<locationEle.length ; i++){

   int ele = locationEle[i];

}

 

이러한 식으로 작성을 해야 하지만 1.5에서 추가된 향상된 for문같은경우는 다음과 같이 작성이 가능합니다.

 

for (int ele : locationEle) {}

 
int ele : 배열에 들어있는 한 원소의 값을 저장해 둘 변수를 선언. 매번 순환문이 반복될때마다 이변수(ele) 에 배열 원소의 값이 대됩니다. 이 순환문은 더이상 남아 있는 원소가 없게 될때 까지 또는 break가 실행될 때까지 반복됩니다.
 
:  --> 콜론(:)은 왼쪽에 있는 변수에 오른쪽에 있는 것의 각원소의 값이 대입된다는 것을 뜻합니다. 즉 locationEle 에 들어있는 모든 int 값에 대해서 순환문을 돌린다고 보면 되죠.
 
locationEle : 이 for  문에서 순환문을 돌릴 대상이 되는 배열, 매번 순환문이 반복될때마다 배열에 들어있는 다음 원소가  "ele"이라는 변수에 대입 됩니다.
 
 
for 순환문의 종류
 
for (int i=0 ; i<10 ; i++){
   //여기있는 코드를 열번 반복
}
이런 형식의 for 구절로도 어떤 순환문이 든 돌릴수 있습니다. 하지만 자바 5.0부터 배열 (또는 기타 컬렉션)의 원소들에 대해서 반복작업을 하고 싶을때 쓸수 있는 '향상된 for 순환문' 이 등장했습니다. 물론 배열의 모든 원소에 대해서 반복 작업을 할때 기존 for 순환문을 써도 되지만 향상된 for 순환문을 쓰면 더 쉽게 작성이 가능하다는 것입니다.


반응형