Remplissage à gauche d'une chaîne avec des zéros en Java
Des questions similaires ont été discutées dans le passé, mais il reste une certaine ambiguïté concernant la technique de gauche en remplissant une chaîne avec des zéros. Plus précisément, visons à réaliser la transformation suivante :
Entrée : "129018"
Sortie : "0000129018"
La sortie finale doit être composée d'exactement dix caractères.
Chaînes numériques
Pour les chaînes contenant uniquement des caractères numériques, une approche simple consiste à convertir la chaîne en entier, puis à utiliser la méthode String.format pour appliquer un remplissage à gauche :
String input = "129018"; int number = Integer.parseInt(input); String padded = String.format("%010d", number);
Chaînes non numériques
Pour les chaînes non numériques, des approches alternatives sont requises :
Chaîne Concaténation
Vous pouvez concaténer le nombre requis de zéros au début de la chaîne :
String input = "abc"; StringBuilder padded = new StringBuilder(); int paddingLength = 10 - input.length(); for (int i = 0; i < paddingLength; i++) { padded.append('0'); } padded.append(input);
Remplacement de sous-chaîne
Vous pouvez remplacez une sous-chaîne de la longueur appropriée au début de la chaîne par zéros :
String input = "abc"; String padded = String.format("%10s", input).replaceFirst(" ", "0");
StringBuilder Transformation
Vous pouvez créer un StringBuilder à partir de la chaîne existante et insérer des zéros au début :
String input = "abc"; StringBuilder padded = new StringBuilder(input); for (int i = 0; i < 10 - input.length(); i++) { padded.insert(0, '0'); }
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!