如何在Java中判断字符串的第一个字符是否为数字?
使用isDigit()方法
java.lang.Character类的isDigit()方法接受一个字符作为参数,并判断它是否为数字。如果给定字符是数字,则此方法返回true;否则,此方法返回false。
因此,要确定给定字符串的第一个字符是否为数字。
String类的charAt()方法接受一个表示索引的整数值,并返回指定索引处的字符。
此类的toCharArray()方法将字符串转换为字符数组并返回它,您可以将其第一个字符作为array[0]获取。
使用上述任一方法检索所需字符串的第一个字符。
然后,通过将其作为参数传递给isDigit()方法来确定它是否为数字。
示例
import java.util.Scanner; public class FirstCharacterOfString { public static void main(String args[]) { //Reading String from user System.out.println("Enter a String"); Scanner sc = new Scanner(System.in); String str = sc.next(); //Converting String to a character array char charArray[] = str.toCharArray(); boolean bool = Character.isDigit(charArray[0]); if(bool) { System.out.println("First character is a digit"); } else { System.out.println("First character is not a digit"); } } }
输出1
Enter a String krishna First character is not a digit
输出2
Enter a String 2sample First character is a digit
使用正则表达式。
String类的matches()方法接受一个正则表达式,并验证它是否与当前字符串匹配;如果匹配,则返回true;否则,返回false。
匹配以数字作为第一个字符的字符串的正则表达式为“^[0-9].*$”。将其作为参数传递给String类的matches()方法。
示例
import java.util.Scanner; public class FirstCharacterOfString { public static void main(String args[]) { //reading String from user System.out.println("Enter a String"); Scanner sc = new Scanner(System.in); String str = sc.next(); boolean bool = str.matches("^[0-9].*$"); if(bool) { System.out.println("First character is a digit"); } else { System.out.println("First character is not a digit"); } } }
输出1
Enter a String krishna First character is not a digit
输出2
Enter a String 2sample First character is a digit
广告