hasMoreElements()와 nextElement()에 대해 알고 싶습니다
JSP 공부중인데 JAVA파일에서 나오는 함수입니다...
잘 몰라서 네이버를 검색했더니
데이터 검색용 메서드인거 같은데...
잘은 모르겠습니다..
알려주세요..
55글자 더 채워주세요.
2개의 답변이 있어요!
자바에 Iterator 와 Enumberation ,2개의 열거자 interface 가 있습니다.
위 메소드는 Enumberation 정의되어 있는 메소드입니다. 해당 메소드를 이용해서 Collection 들의 요소들을 순차적으로
검색할 수 있습니다. 결국 Enumberation interface 를 구현하고 있는 클래스들은 사용할 수 있습니다.
좀 더 자세한 내용은구글에서 "Iterator Enumberation" 키워드로 검색하시면 됩니다.
hasMoreElements와 nextElement는 Enumeration 인터페이스에 있는 메서드입니다.
hasMoreElements()로 해당 Enumeration에 요소가 더 있는지 확인할 수 있고,
요소가 더 있다면 nextElement()로 다음 요소를 가져올 수 있습니다.
public class Main { public static void main(String[] args) { Vector<String> vec = new Vector<String>(); vec.addElement("X"); vec.addElement("Y"); vec.addElement("Z"); vec.addElement("W"); for(int i = 0; i < vec.size(); i++) { System.out.println("vec[" + i + "] = " + vec.elementAt(i)); } } }Enumeration을 사용하지 않으면 이렇게 쓸 수 있습니다.
public class Main { public static void main(String[] args) { Vector<String> vec = new Vector<String>(); vec.addElement("X"); vec.addElement("Y"); vec.addElement("Z"); vec.addElement("W"); Enumeration<String> e = vec.elements(); while(e.hasMoreElements()) { System.out.println("vec[] = " + e.nextElement()); } } }좋은 예시는 아니지만... Enumeration을 사용한다면 이렇게 쓸 수 있습니다.