Maison > Java > JavaBase > Comment déterminer s'il s'agit d'un nombre en Java

Comment déterminer s'il s'agit d'un nombre en Java

angryTom
Libérer: 2019-11-12 14:08:42
original
4111 Les gens l'ont consulté

Lors de la programmation, nous rencontrons souvent le besoin de déterminer si les caractères d'une chaîne sont des nombres (0-9) et de déterminer si la chaîne est un nombre. Vous pouvez utiliser certaines des méthodes fournies avec Java, ou. vous pouvez utiliser d'autres méthodes étranges, comme juger s'il s'agit d'un nombre entier et forcer la chaîne à être un nombre entier, une erreur sera générée, donc ce n'est pas un nombre entier. vous présenter plusieurs méthodes de mise en œuvre.

Comment déterminer s'il s'agit d'un nombre en Java

Comment juger s'il s'agit d'un nombre en Java

1 Utilisez Character.isDigit(char) pour. juge (un seul peut être jugé Caractères)

String str = "123abc";
if (!"".equals(str)) {
    char num[] = str.toCharArray(); //把字符串转换为字符数组
    StringBuffer title = new StringBuffer(); //使用StringBuffer类,把非数字放到title中
    StringBuffer hire = new StringBuffer(); //把数字放到hire中
   
    for (int i = 0; i < num.length; i++) {

        // 判断输入的数字是否为数字还是字符
        if (Character.isDigit(num[i])) {
            把字符串转换为字符, 再调用Character.isDigit(char) 方法判断是否是数字, 是返回True, 否则False
            hire.append(num[i]); // 如果输入的是数字,把它赋给hire
        } else {
            title.append(num[i]); // 如果输入的是字符,把它赋给title
        }
    }
}
Copier après la connexion

2. Utilisez la conversion de type pour juger

try {
    String str = "123abc";
    int num = Integer.valueOf(str); //把字符串强制转换为数字  
    return true; //如果是数字,返回True  
} catch (Exception e) {
    return false; //如果抛出异常,返回False
}
Copier après la connexion

3. 🎜>

String str = "";
boolean isNum = str.matches("[0-9]+");
//+表示1个或多个(如"3"或"225"),*表示0个或多个([0-9]*)(如""或"1"或"22"),?表示0个或1个([0-9]?)(如""或"7")  
4. 使用Pattern类和Matcher
view plaincopy
String str = "123";
Pattern pattern = Pattern.compile("[0-9]+");
Matcher matcher = pattern.matcher((CharSequence) str);
boolean result = matcher.matches();
if (result) {
    System.out.println("true");
} else {
    System.out.println("false");
}
Copier après la connexion
Tutoriel recommandé :

tutoriel Java

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal