Comment convertir des nombres en mots en Java
La conversion de nombres en mots en Java peut être une tâche utile pour une variété d'applications, telles que comme générer des factures, rédiger des chèques ou raconter des données numériques.
Java intégré Bibliothèques
Malheureusement, il n'existe aucune méthode intégrée dans aucune des bibliothèques Java standard qui convertit spécifiquement les nombres en mots. Cependant, en utilisant du codage créatif et les bibliothèques qui existent déjà, vous pouvez facilement écrire votre propre méthode pour accomplir cette tâche.
Convertisseur de nombres personnalisés en mots
Voici un exemple de méthode Java que vous pouvez utiliser pour convertir des nombres en mots :
public class NumberToWords { private static String[] lessThan20 = {"", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten", "eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen"}; private static String[] tens = {"", "", "twenty", "thirty", "forty", "fifty", "sixty", "seventy", "eighty", "ninety"}; private static String[] thousands = {"", "thousand", "million", "billion", "trillion"}; public static String convert(long number) { if (number == 0) { return "zero"; } if (number < 0) { return "minus " + convert(-number); } int index = 0; String words = ""; while (number > 0) { if (number % 1000 != 0) { words = convertLessThanOneThousand(number % 1000) + " " + thousands[index] + " " + words; } number /= 1000; index++; } return words.trim(); } private static String convertLessThanOneThousand(long number) { if (number == 0) { return ""; } if (number < 20) { return lessThan20[(int) number]; } if (number < 100) { return tens[(int) number / 10] + "-" + lessThan20[(int) number % 10]; } return lessThan20[(int) number / 100] + " hundred " + convertLessThanOneThousand(number % 100); } public static void main(String[] args) { System.out.println(convert(1000)); System.out.println(convert(123456789)); System.out.println(convert(987654321012L)); } }
Utilisation
Pour utiliser cette méthode, importez simplement la classe NumberToWords et appelez la méthode convert, en passant le nombre que vous souhaitez convertir en tant que argument.
import static com.example.converter.NumberToWords.convert; long myNumber = 123456789; String words = convert(myNumber); System.out.println(words); // Output: one hundred twenty three million four hundred fifty six thousand seven hundred eighty nine
Autres approches
Il existe également d'autres approches vous pouvez utiliser pour convertir des nombres en mots en Java, notamment en utilisant des expressions régulières ou en tirant parti de bibliothèques tierces. Cependant, la méthode personnalisée fournie ci-dessus constitue un moyen simple et efficace de faire le travail.
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!