Salut !
Je veux connaitre le nom de la méthode Java qui prend en argument un caractère et retourne sa position.
j'ai besoin de votre aide s'il vous plaît, c'est urgent !
Merci d'avance.
Salut !
Je veux connaitre le nom de la méthode Java qui prend en argument un caractère et retourne sa position.
j'ai besoin de votre aide s'il vous plaît, c'est urgent !
Merci d'avance.
La JavaDoc sera toujours ta plus grande amie. En l’occurrence la JavaDoc de String.
indexOf()
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
merci de m'avoir répondu si vite.La JavaDoc sera toujours ta plus grande amie. En l’occurrence la JavaDoc de String.
indexOf()
J'ai déjà pensé à la fonction indexOf mais puisque je travaille avec la classe StringBuffer je ne sais pas comment ça va marcher ?
Il faut toujours se référer au javadoc de la classe.
A+.
je n'ai pas trouvé dans la page la méthode que je cherche !Il faut toujours se référer au javadoc de la classe.
je cherche une méthode qui prend en argument un caractère et retourne sa position dans la chaîne courante, sinon elle retourne -1.
Pour quoi est-ce que tu tiens tant à ce que ça soit un caractère ? Un caractère peut se transformer un une String
Je sais , mais c'est pas ça que je cherche !!Un caractère peut se transformer un une String
de toute façon, j'ai trouvé la solution, La voici :
les méthodes de la classe String peuvent être utiliser dans la classe StringBuffer grâce à la méthode toString.
Merci quand même
Comme si StringBuffer n'a pas la methode indexOf
Moi non plus je n'ai pas compris, mais bon...
Responsable Java de Developpez.com (Twitter et Facebook)
Besoin d'un article/tutoriel/cours sur Java, consulter la page cours
N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
--------
Architecte Solution
LinkedIn : https://www.linkedin.com/in/nicolascaudard/
Ça lui déplaît de convertir son char en String.
Et sur le principe je lui donne pas complètement tort... Mais convertir son StringBuffer en String avec toString() est bien pire que cela -_-°.
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
et bah bien sur que oui !, c'est pour cela que j'ai converti la chaîne de la classe StringBuffer en String pour pouvoir utiliser la méthode indexOf.Comme si StringBuffer n'a pas la methode indexOf
hélas !! pourtant c'est claire.Moi non plus je n'ai pas compris, mais bon...
jettez un coup d’œil sur cet exemple, espérant que vous compreniez :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 public class ST { public static void main(String[] args) { StringBuffer sb = new StringBuffer(); sb.append("Hello World"); int i = sb.toString().indexOf("r"); System.out.println(i); } }absolument, je fait pas la conversion totale (La chaine sb restera toujours en StringBuffer) mais la conversion se fait temporairement en exécutant l'instruction :Mais convertir son StringBuffer en String avec toString() est bien pire que cela
Code : Sélectionner tout - Visualiser dans une fenêtre à part int i = sb.toString().indexOf("r");
Cordialement.
On avait compris, mais pourquoi pas :
? Ça fait une opération (coûteuse, possiblement très,) en moins.
Code : Sélectionner tout - Visualiser dans une fenêtre à part int i = sb.indexOf("r");
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
Le fait que je n'est pas appliqué la méthode indexOf sur la chaine directement c'est pour deux raisons :
- D'une part : il y a une surcharge de la méthode indexOf dans la classe stringBuffer, de deux façons, elle prend comme paramètre une chaine de caractère ou bien une chaine de caractère et un entier, et c'est pas ce que je veux !
- D'autre part : si on considère qu'un caractère peut être vu comme une chaine de caractère de taille 1, et donc si le caractère est inconnu (on l'appel d'une autre chaine) alors, que fait-on ?
mon problème se déroule sur deux parties :
- Je travaille avec la classe StringBuffer, évidement je ne peut travailler qu'avec les méthodes de cette classe.
- Cette classe ne contient pas une méthode qui pourra me retourner la position d'un caractère dans une chaine.
c'est pour cela que j'étais obligé de convertir la chaine de StringBuffer en String pour pouvoir utiliser la méthode indexOf de la classe String (qui prend en argument un caractère).
et voici une partie de mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 public class Nm_Position { public static void main(String args[]){ StringBuffer mon_nom = new StringBuffer("Khaled_PRG"); int nb_position; for(int i = 0;i <= mon_nom.length() - 1 ;i++) { nb_position = mon_nom.toString().indexOf(mon_nom.charAt(i)); System.out.println("La position de "+mon_nom.charAt(i)+" égal à "+nb_position); } } }
Je pense qu'il serait moins couteux de convertir le char en String avec la méthode static String.valueOf(Char c) plutôt que de passer par toString();
Comment !?!Je pense qu'il serait moins couteux de convertir le char en String avec la méthode static String.valueOf(Char c) plutôt que de passer par toString();
Il paraît que vous n'avez pas bien lus ce que j'ai écrit auparavant !
Cette fonction ne me conviens pas puisque je travaille avec la classe StringBuffer.
Responsable Java de Developpez.com (Twitter et Facebook)
Besoin d'un article/tutoriel/cours sur Java, consulter la page cours
N'hésitez pas à consulter la FAQ Java et à poser vos questions sur les forums d'entraide Java
--------
Architecte Solution
LinkedIn : https://www.linkedin.com/in/nicolascaudard/
la méthode indexOf fait parti de la classe Stringbuffer et la méthode String.valueOf est une méthode static. Ou est le problème ?
Le problème c'est qu'il n'a pas le niveau pour comprendre ce qu'on lui dit, c'est tout -_-°. Robin semble vouloir laisser tomber la discussion.
De toute façon, c'est vrai que c'est dommage que StringBuffer et StringBuilder n'aient pas de méthode indexOf(int) ni indexOf(char).
N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager