java.lang.Character
class provides 'isJavaIdentifierStart' and 'isJavaIdentifierPart' methods to
check whether given character can be part of valid variable name or not.
public static boolean
isJavaIdentifierPart(char ch)
public static boolean
isJavaIdentifierPart(int codePoint)
Return
true, if the character may be part of a Java identifier, else false.
public static boolean
isJavaIdentifierStart(char ch)
public static boolean
isJavaIdentifierStart(int codePoint)
Below
method checks whether given string is valid variable name or not.
public static boolean
isValidVariableName(String variableName) {
if (variableName == null ||
variableName.isEmpty()) {
throw new
IllegalArgumentException("variableName can't be null (or) empty");
}
char[] charArray =
variableName.toCharArray();
if
(!Character.isJavaIdentifierStart(charArray[0])) {
System.out.println("variable
name shouldn't start with " + charArray[0] + ", variable name :
" + variableName);
return false;
}
for (int i = 1; i <
charArray.length; i++) {
if
(!Character.isJavaIdentifierPart(charArray[i])) {
System.out.println("Variable
name shouldn't contain " + charArray[i] + ", variable name : " +
variableName);
return
false;
}
}
return true;
}
Find
the below working application.
package com.sample.app; public class Test { public static boolean isValidVariableName(String variableName) { if (variableName == null || variableName.isEmpty()) { throw new IllegalArgumentException("variableName can't be null (or) empty"); } char[] charArray = variableName.toCharArray(); if (!Character.isJavaIdentifierStart(charArray[0])) { System.out.println("variable name shouldn't start with " + charArray[0] + ", variable name : " + variableName); return false; } for (int i = 1; i < charArray.length; i++) { if (!Character.isJavaIdentifierPart(charArray[i])) { System.out.println("Variable name shouldn't contain " + charArray[i] + ", variable name : " + variableName); return false; } } return true; } public static void main(String args[]) { System.out.println("Is \"employee\" valid variable name? : " + isValidVariableName("employee")); System.out.println("Is \"@emp123\" valid variable name? : " + isValidVariableName("@emp123")); System.out.println("Is \"_emp\" valid variable name? : " + isValidVariableName("_emp")); } }
Output
Is "employee" valid variable name? : true variable name shouldn't start with @, variable name : @emp123 Is "@emp123" valid variable name? : false Is "_emp" valid variable name? : true
You may like
No comments:
Post a Comment