/ / Java split paramètre de la commande - java, paramètres, split

Java split paramètre de la commande - java, paramètres, split

J'essaye de séparer l'entrée de l'utilisateur par exemple !stats username Cette commande fonctionne bien, mais lorsque l’utilisateur n’écrit pas simplement le nom d’utilisateur !stats mes dames échouent et plantent Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 1

if (!Config.str.split("!stats")[1].isEmpty()) {
}

Réponses:

2 pour la réponse № 1

Vous devez vérifier la taille du tableau, s'il n'y a pasnom d'utilisateur, alors Array n'aura qu'un seul élément d'indice 0. Vous pouvez également vérifier si string est vide après l'ajustement pour vérifier si la commande avait uniquement un espace à la fin "! stats"

String[] split = Config.str.split("!stats");
if(split.length > 1 && !split[1].trim().isEmpty()) {
//do something
}

0 pour la réponse № 2

str.split("!stats"); ne donne pas d'erreur

votre condition est fausse, elle donne des exceptions

 boolean condition = Config.str.split("!stats").length<=0 ? false : true;

if (condition) {
//your code
}

peut-être devriez-vous essayer de cette façon