diff options
Diffstat (limited to 'javaparser-core/src/main/java/com/github/javaparser')
-rw-r--r-- | javaparser-core/src/main/java/com/github/javaparser/ast/expr/IntegerLiteralExpr.java | 6 | ||||
-rw-r--r-- | javaparser-core/src/main/java/com/github/javaparser/ast/expr/LongLiteralExpr.java | 6 |
2 files changed, 6 insertions, 6 deletions
diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/IntegerLiteralExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/IntegerLiteralExpr.java index 58fd20392..a1b05b2d1 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/IntegerLiteralExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/IntegerLiteralExpr.java @@ -77,13 +77,13 @@ public class IntegerLiteralExpr extends LiteralStringValueExpr { public int asInt() { String result = value.replaceAll("_", ""); - if (result.startsWith("0x")) { + if (result.startsWith("0x") || result.startsWith("0X")) { return Integer.parseUnsignedInt(result.substring(2), 16); } - if (result.startsWith("0b")) { + if (result.startsWith("0b") || result.startsWith("0B")) { return Integer.parseUnsignedInt(result.substring(2), 2); } - if (result.startsWith("0")) { + if (result.length() > 1 && result.startsWith("0")) { return Integer.parseUnsignedInt(result.substring(1), 8); } return Integer.parseInt(result); diff --git a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/LongLiteralExpr.java b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/LongLiteralExpr.java index 0db0b9b12..9178c9240 100644 --- a/javaparser-core/src/main/java/com/github/javaparser/ast/expr/LongLiteralExpr.java +++ b/javaparser-core/src/main/java/com/github/javaparser/ast/expr/LongLiteralExpr.java @@ -81,13 +81,13 @@ public class LongLiteralExpr extends LiteralStringValueExpr { if (lastChar == 'l' || lastChar == 'L') { result = result.substring(0, result.length() - 1); } - if (result.startsWith("0x")) { + if (result.startsWith("0x") || result.startsWith("0X")) { return Long.parseUnsignedLong(result.substring(2), 16); } - if (result.startsWith("0b")) { + if (result.startsWith("0b") || result.startsWith("0B")) { return Long.parseUnsignedLong(result.substring(2), 2); } - if (result.startsWith("0")) { + if (result.length() > 1 && result.startsWith("0")) { return Long.parseUnsignedLong(result.substring(1), 8); } return Long.parseLong(result); |