Shortest code to throw IllegalArgumentException in Java
These were all found by grepping the source code in the package java.lang.

All of them result in a "pure" IllegalArgumentException (i.e. not a subclass of it).

The ones marked * only work if you add " throws Exception" (18 characters) to your main declaration, as they throw a checked exception of some kind.

12 (30?) characters*

"".wait(-1);


This will result in:

java.lang.IllegalArgumentException: timeout value is negative


22 (40?) characters*

new Thread().join(-1);


22 characters

Character.toChars(-1);


30 characters

Character.UnicodeBlock.of(-1);