English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
불법이거나 적절하지 않은 시간에 메서드를 호출하면 이 예외가 발생하고 IllegalStateException가 생성됩니다.
예를 들어remove()
ArrayList 클래스의 메서드를 호출할 때next()
이전 방법을 사용한 후 마지막 요소를 제거합니다.
현재 위치에서 요소를 제거한 후 다음 요소로 이동하여 제거해야 합니다. 즉, 이 메서드를 매번 호출합니다.next()
메서드를 호출할 때remove()
이 메서드를 한 번 호출합니다.
리스트(포인터)의 초기 위치가 첫 번째 요소 앞에 있기 때문에 다음 메서드를 호출하지 않으면 이 메서드를 호출할 수 없습니다.
이 메서드를 호출하면remove()
메서드를 호출하지 않으면 java.lang.IllegalStateException이 발생합니다.
아래의 예제에서는 다음과 같은 메서드를 사용하여 시도합니다remove()
ArrayList의 요소를 제거한 후 첫 번째 요소로 이동하는 메서드를 제공합니다
import java.util.ArrayList; import java.util.ListIterator; public class NextElementExample{ public static void main(String args[]) { //ArrayList 객체를 인스턴스화합니다 ArrayList<String> list = new ArrayList<String>(); //ArrayList을 채웁니다- list.add("apples"); list.add("mangoes"); //ArrayList의 Iterator 객체를 얻습니다 ListIterator<String> it = list.listIterator(); //초기 위치로 이동하지 않고 요소를 제거합니다 it.remove(); } }
thread "main"에서 Exception 발생 java.lang.IllegalStateException at java.util.ArrayList$Itr.remove(Unknown Source) at MyPackage.NextElementExample.main(NextElementExample.java:17)
IllegalArgumentException-메서드나 생성자에 부적절한 파라미터를 전달할 때마다 IllegalArgumentException이 발생합니다.
valueOf()
java.sql.Date 클래스의 메서드는 JDBC 응축 형식 yyyy로 전달된 값을 받아들이며- [m] m- [d] d는 날짜의 String을 나타내며 java.sql.Date 객체로 변환합니다. 그러나 다른 어떤 형식으로도 date String을 전달하면 이 메서드는 IllegalArgumentException을 발생시킵니다.
import java.sql.Date; import java.util.Scanner; public class IllegalArgumentExample { public static void main(String args[]) { Scanner sc = new Scanner(System.in); System.out.println("Enter your date of birth in JDBC escape format (yyyy-mm-dd) "); String dateString = sc.next(); Date date = Date.valueOf(dateString); System.out.println("Given date converted int to an object: "+date); } }
Enter your date of birth in JDBC escape format (yyyy-mm-dd) 26-07-1989 Exception in thread "main" java.lang.IllegalArgumentException at java.sql.Date.valueOf(Unknown Source) at july_ipoindi.NextElementExample.main(NextElementExample.java:11)