Les chaînes sont des séquences de caractères. Par exemple, "Bonjour !" est une chaîne car elle est composée des caractères 'H', 'e', 'l', 'l', 'o' et '!'. En Java, les chaînes sont des objets, ce qui signifie qu'il existe une classe String qui a des champs et des méthodes. Nous pouvons utiliser les méthodes de la classe String pour manipuler des chaînes.
Pas
Méthode 1 sur 5: Créer une chaîne
Étape 1. Créez une chaîne à l'aide du constructeur de la classe String
String str = new String("Bonjour !");
Étape 2. Créez une chaîne en attribuant directement une chaîne
Étape 3. Essayez un exemple
Voici un exemple de programme qui crée une chaîne de deux manières différentes.
public class StringManipulation { public static void main(String args) { String str1 = new String("Chaîne créée avec un constructeur!"); String str2 = "Chaîne créée sans constructeur !"; System.out.println(str1); System.out.println(str2); } }
Méthode 2 sur 5: Trouver la longueur d'une chaîne
Étape 1. Comprenez ce que signifie trouver la longueur d'une chaîne
La longueur d'une chaîne est le nombre de caractères que la chaîne contient. Par exemple, la longueur de la chaîne "Hello!" est 6 car il a 6 caractères.
Étape 2. Appelez le
longueur()
sur l'objet String et stockez le résultat dans une variable entière.
int strLength = str.length();
Étape 3. Essayez-le
Voici un exemple de programme qui trouve la longueur d'une chaîne.
public class StringManipulation { public static void main(String args) { String str = "Bonjour!"; int strLength = str.length(); System.out.println("La longueur de \"" + str + "\" est " + strLength + "."); } }
Méthode 3 sur 5: Inverser une chaîne
Étape 1. Comprenez ce que signifie inverser une chaîne
Inverser une chaîne signifie changer l'ordre des caractères dans une chaîne. Par exemple, l'inverse de la chaîne "Hello!" est "!olleH". Il existe de nombreuses façons d'inverser une chaîne en Java.
Étape 2. Utilisez la méthode inverse de la classe StringBuffer
Créez un objet StringBuffer qui prend la chaîne que vous souhaitez inverser en tant que paramètre. Utilisez la méthode reverse() de StringBuffer, puis récupérez la nouvelle chaîne inversée à l'aide de la méthode toString().
public class StringManipulation { public static void main(String args) { String str = "Bonjour!"; Tampon StringBuffer = new StringBuffer(str); String reversedStr = buffer.reverse().toString(); System.out.println("L'inverse de la chaîne \"" + str + "\" est \"" + reversedStr + "\"."); } }
Étape 3. Parcourez les caractères d'une chaîne en sens inverse, en ajoutant ces caractères à un StringBuffer à chaque itération
Créez un nouvel objet StringBuffer initialisé avec la longueur de la chaîne que vous souhaitez inverser en tant que paramètre. Ensuite, utilisez une boucle for pour parcourir la chaîne, en commençant par le dernier caractère de la chaîne et en se terminant au premier caractère de la chaîne. À chaque itération, ajoutez le caractère à cet index au StringBuffer. Récupérez la chaîne nouvellement inversée à l'aide de la méthode toString().
public class StringManipulation { public static void main(String args) { String str = "Bonjour!"; Tampon StringBuffer = new StringBuffer(str.length()); for (int i = str.length() - 1; i >= 0; i--) { buffer.append(str.charAt(i)); } Chaîne reversedStr = buffer.toString(); System.out.println("L'inverse de la chaîne \"" + str + "\" est \"" + reversedStr + "\"."); } }
Étape 4. Écrivez une fonction récursive pour inverser la chaîne
Dans la fonction récursive, le cas/condition de base est si la chaîne est nulle ou si la longueur de la chaîne est inférieure ou égale à aucune. Sinon, la méthode reverse() est appelée à nouveau avec la chaîne moins le premier caractère, et le premier caractère est ajouté à la fin. Donc, si nous avons passé la chaîne "Hello!", le premier appel reverse() après cela aura le paramètre "ello!".
public class StringManipulation { public static void main(String args) { String str = "Bonjour!"; Chaîne reversedStr = reverse(str); System.out.println("L'inverse de la chaîne \"" + str + "\" est \"" + reversedStr + "\"."); } private static String reverse(String str) { if (str == null || str.length() <= 1) return str; return reverse(str.substring(1)) + str.charAt(0); } }
Étape 5. Convertissez la chaîne en un tableau de caractères, puis permutez le premier et le dernier, le deuxième et l'avant-dernier, etc
personnages. Convertissez d'abord la chaîne en un tableau de caractères en utilisant la méthode toCharArray() sur la chaîne. Obtient l'index du dernier caractère du tableau, qui est égal à la longueur du tableau moins un. Ensuite, parcourez le tableau, en échangeant le ie caractère et l'indexOfLastChar - ie caractère à chaque itération. Enfin, reconvertissez le tableau de caractères en chaîne.
public class StringManipulation { public static void main(String args) { String str = "Bonjour!"; char charArray = str.toCharArray(); int indexOfLastChar = charArray.length - 1; for (int i = 0; i < charArray.length/2; i++) { char temp = charArray; tableauchar = tableauchar[indexOfLastChar - i]; tableauchar[indexOfLastChar - i] = temp; } String reversedStr = new String(charArray); System.out.println("L'inverse de la chaîne \"" + str + "\" est \"" + reversedStr + "\"."); } }
Étape 6. Passez en revue votre sortie
Voici la sortie qui résulte de l'une de ces méthodes d'inversion de chaîne.
Méthode 4 sur 5: Couper l'espace blanc dans une chaîne
Étape 1. Comprenez ce que signifie couper l'espace blanc dans une chaîne
Couper une chaîne en Java signifie supprimer l'espace blanc de début et de fin dans la chaîne. Par exemple, si vous avez la chaîne"
Bonjour le monde!
" et vous voulez qu'il dise "Hello, world!" sans l'espace blanc au début et à la fin, vous pouvez couper la chaîne. La classe String fournit une méthode pour trim() qui renvoie une copie de la chaîne avec les espaces blancs de début et de fin ont été supprimés ou la chaîne d'origine si elle n'a pas d'espace blanc de début ou de fin.
Étape 2. Utilisez la méthode trim() de la classe String sur un objet String pour rogner l'espace blanc
Notez que la méthode trim() lèvera une exception si la chaîne est nulle. La méthode trim() ne modifiera pas le contenu de la chaîne d'origine car les chaînes en Java sont immuables, ce qui signifie que l'état d'une chaîne ne peut pas être modifié après sa création. Au lieu de cela, la méthode trim() renverra une nouvelle chaîne dont les espaces blancs ont été supprimés.
Chaîne trimmedStr = str.trim();
Étape 3. Essayez un exemple
Voici un exemple de programme qui supprime l'espace blanc d'une chaîne:
public class StringManipulation { public static void main(String args) { String str = " Bonjour ! "; Chaîne trimmedStr = str.trim(); System.out.println("La chaîne d'origine est \"" + str + "\"."); System.out.println("La chaîne découpée est \"" + trimmedStr + "\"."); } }
Méthode 5 sur 5: Diviser une chaîne
Étape 1. Comprenez ce que signifie diviser une chaîne
Diviser une chaîne en Java signifie diviser une chaîne par un certain délimiteur en un tableau de sous-chaînes. Par exemple, si je divise la chaîne "rouge, bleu, vert, jaune, rose" avec une virgule comme délimiteur, j'obtiendrais le tableau { "rouge", "bleu", "vert", "jaune", "rose " }. Voici trois façons différentes de diviser une chaîne.
Étape 2. Utilisez
StringTokenizer
pour tokeniser la chaîne.
Importer
java.util. StringTokenizer
. Créez ensuite une nouvelle instance d'un
StringTokenizer
avec la chaîne à tokeniser et le délimiteur comme paramètres. Si vous n'entrez pas le délimiteur comme paramètre, le délimiteur sera automatiquement par défaut un espace blanc. Après avoir le
StringTokenizer
vous pouvez utiliser le
jeton suivant()
méthode pour obtenir chaque jeton.
importer java.util. Arrays; importer java.util. StringTokenizer; public class StringManipulation { public static void main(String args) { String str = "rouge, vert, bleu, jaune, rose"; StringTokenizer tokenizer = new StringTokenizer(str, ", "); int numberOfTokens = tokenizer.countTokens(); String splitArr = new String[numberOfTokens]; for (int i = 0; i < numberOfTokens; i++) { splitArr = tokenizer.nextToken(); } System.out.println("\nChaîne d'origine: " + str); System.out.println("Split Array: " + Arrays.toString(splitArr) + "\n"); } }
Avant Java 1.4, le
StringTokenizer
class a été utilisé pour diviser des chaînes en Java. Mais maintenant, l'utilisation de
StringTokenizer
est déconseillée et l'utilisation du
diviser()
méthode dans le
Chaîne de caractères
classe ou l'utilisation du
java.util.regex
Étape 3. Utilisez le
Chaîne de caractères
la classe
diviser()
méthode.
Les
diviser()
La méthode prendra le délimiteur comme paramètre et renverra un tableau de sous-chaînes identiques aux jetons du
StringTokenizer
importer java.util. Arrays; public class StringManipulation { public static void main(String args) { String str = "rouge, vert, bleu, jaune, rose"; String splitArr = str.split(", "); System.out.println("\nChaîne d'origine: " + str); System.out.println("Split Array: " + Arrays.toString(splitArr) + "\n"); } }
Étape 4. Utilisez des expressions régulières pour diviser la chaîne
Importer
java.util.regex. Pattern
. Utilisez le
compiler()
méthode de la
Modèle
class pour définir le délimiteur, puis donner le
diviser()
method la chaîne que vous souhaitez diviser. Les
Modèle
retournera un tableau de sous-chaînes.
importer java.util. Arrays; importer java.util.regex. Pattern; public class StringManipulation { public static void main(String args) { String str = "rouge, vert, bleu, jaune, rose"; String splitArr = Pattern.compile(", ").split(str); System.out.println("\nChaîne d'origine: " + str); System.out.println("Split Array: " + Arrays.toString(splitArr) + "\n"); } }
Étape 5. Passez en revue votre sortie
Voici la sortie qui résulte de l'une de ces méthodes pour diviser les chaînes.