src/java.base/share/classes/java/lang/Character.java
changeset 49211 948ece16567b
parent 49203 3a225d9cabe1
child 50045 d9d55f64d136
--- a/src/java.base/share/classes/java/lang/Character.java	Mon Mar 12 16:09:18 2018 -0700
+++ b/src/java.base/share/classes/java/lang/Character.java	Mon Mar 12 20:47:21 2018 -0700
@@ -3590,7 +3590,8 @@
          */
         public static UnicodeBlock of(int codePoint) {
             if (!isValidCodePoint(codePoint)) {
-                throw new IllegalArgumentException();
+                throw new IllegalArgumentException(
+                    String.format("Not a valid Unicode code point: 0x%X", codePoint));
             }
 
             int top, bottom, current;
@@ -3649,7 +3650,8 @@
         public static final UnicodeBlock forName(String blockName) {
             UnicodeBlock block = map.get(blockName.toUpperCase(Locale.US));
             if (block == null) {
-                throw new IllegalArgumentException();
+                throw new IllegalArgumentException("Not a valid block name: "
+                            + blockName);
             }
             return block;
         }
@@ -7394,7 +7396,8 @@
          */
         public static UnicodeScript of(int codePoint) {
             if (!isValidCodePoint(codePoint))
-                throw new IllegalArgumentException();
+                throw new IllegalArgumentException(
+                    String.format("Not a valid Unicode code point: 0x%X", codePoint));
             int type = getType(codePoint);
             // leave SURROGATE and PRIVATE_USE for table lookup
             if (type == UNASSIGNED)
@@ -8088,7 +8091,8 @@
             toSurrogates(codePoint, dst, dstIndex);
             return 2;
         } else {
-            throw new IllegalArgumentException();
+            throw new IllegalArgumentException(
+                String.format("Not a valid Unicode code point: 0x%X", codePoint));
         }
     }
 
@@ -8116,7 +8120,8 @@
             toSurrogates(codePoint, result, 0);
             return result;
         } else {
-            throw new IllegalArgumentException();
+            throw new IllegalArgumentException(
+                String.format("Not a valid Unicode code point: 0x%X", codePoint));
         }
     }
 
@@ -10178,7 +10183,8 @@
      */
     public static String getName(int codePoint) {
         if (!isValidCodePoint(codePoint)) {
-            throw new IllegalArgumentException();
+            throw new IllegalArgumentException(
+                String.format("Not a valid Unicode code point: 0x%X", codePoint));
         }
         String name = CharacterName.getInstance().getName(codePoint);
         if (name != null)