1.
Remplacer un caractère par un autre sans replace
public static String myReplace(String sentence, char oldChar, char newChar)
{
String result = "";
for (int i = 0; i < [Link](); i++) {
char c = [Link](i);
if (c == oldChar) {
result += newChar;
} else {
result += c;
}
}
return result;
}
2. Compter les mots dans une phrase
public static int countWords(String sentence) {
int count = 0;
boolean inWord = false;
for (int i = 0; i < [Link](); i++) {
char c = [Link](i);
if (c != ' ' && !inWord) {
count++;
inWord = true;
} else if (c == ' ') {
inWord = false;
}
}
return count;
}
3. Trouver le mot le plus court
public static String findShortestWord(String sentence) {
sentence = [Link]() + " "; // Ajout d’un espace à la fin pour
détecter le dernier mot
String word = "", shortest = "";
int minLength = Integer.MAX_VALUE;
for (int i = 0; i < [Link](); i++) {
char c = [Link](i);
if (c != ' ') {
word += c;
} else {
if ( && [Link]() < minLength) {
minLength = [Link]();
shortest = word;
}
word = "";
}
}
return shortest;
}
4. Retourner une liste de mots (1 seul espace entre les mots, pas de split)
public static List<String> getWordsListSimple(String sentence) {
List<String> words = new ArrayList<>();
String word = "";
for (int i = 0; i < [Link](); i++) {
char c = [Link](i);
if (c != ' ') {
word += c;
} else {
[Link](word);
word = "";
}
}
if () {
[Link](word);
}
return words;
}
5. Retourner une liste de mots (plusieurs espaces possibles entre les mots, pas
de split)
public static List<String> getWordsListFlexible(String sentence) {
List<String> words = new ArrayList<>();
String word = "";
boolean inWord = false;
for (int i = 0; i < [Link](); i++) {
char c = [Link](i);
if (c != ' ') {
word += c;
inWord = true;
} else if (inWord) {
[Link](word);
word = "";
inWord = false;
}
}
if () {
[Link](word);
}
return words;
}
Exemple d'utilisation dans le main :
public static void main(String[] args) {
String sentence = " Java is fun and powerful ";
[Link]("1. Replace: " + myReplace(sentence, 'a', '*'));
[Link]("2. Word Count: " + countWords(sentence));
[Link]("3. Shortest Word: " + findShortestWord(sentence));
[Link]("4. Word List (1 space): " +
getWordsListSimple("Java is great"));
[Link]("5. Word List (multi-spaces): " +
getWordsListFlexible(sentence));
}
Si tu veux que je mette tout ça dans un seul fichier .java complet, je peux le faire aussi !