IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Java lang StringIndexOutOfBoundsException: String


Sujet :

avec Java

  1. #1
    Membre très actif
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Par défaut Java lang StringIndexOutOfBoundsException: String
    Bonjour,
    lors de l'exécution, mon prg plante et donne le message suivantes:
    Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: -103
    at java.lang.String.substring(Unknown Source)
    at Crypto3.main(Crypto3.java:21)
    quelqu'un peut m'aider svp

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    import java.util.Scanner;
    public class Crypto3 
    {
    	public static void main(String[] args) 
    	{
    	String bla,code;
    	//int i,decal;
    	System.out.println("Entrez la phrase à coder:");
    	Scanner sc=new Scanner(System.in);
    	bla=sc.nextLine();
    	System.out.println("Entrez l'alphabet clé:");
    	char cle=sc.next().charAt(0);
    	String alpha="abcdefghijklmnopqrstuvwxyz";
    	code="";
    	for(int i=1;i<bla.length();i++)
    	{
    		
    		String let=bla.substring(i,1);
    		boolean pos=alpha.contains(bla);
    		code = bla.substring(cle,i);
    	}
    	bla=code;
    	System.out.println("La phrase codée est:"+bla);
     }
    }
    merci d'avance

  2. #2
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    Salut,

    La cause de l'erreur est en toute lettre (et chiffre) dans le message : Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: -103

    Le caractère de position -103 n'existe pas ! Ou essaye tu d’accéder au caractère de position -103 ? Ici : code = bla.substring(cle,i);cle est un char !!! Le premier paramètre est un int et c'est la position du premier caractère qu'on veut extraire. Comme cle est un char, ça utilise son code ASCII comme int, qui est supérieur ou égale à 97. Comme le nombre suivant, c'est la fin de ce qu'il faut extraire, la méthode substring essaye de déterminer la taille de la chaîne à extraire, en faisant fin - début, Comme tu as dû saisir un h comme cle, ça donne 1 - 104 = -103. Et là, la méthode substring() soulève une exception pour dire : c'est quoi une chaîne de -103 caractères de long !!!
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  3. #3
    Membre très actif
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Par défaut
    vous voulez que je fasse le typage, n'est ce pas?
    comme ceci:
    code = bla.substring((int)cle,i);
    mais toujours j'ai la même erreur

  4. #4
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par domxaline Voir le message
    vous voulez que je fasse le typage, n'est ce pas?
    Bah, non, le cast n'est pas obligatoire ici (sinon tu n'aurais pas pu compiler et on t'aurait dit qu'il n'y avait pas de méthode subtring(char, int) dans la classe String.

    Les questions sont :
    1. Pour quoi utiliser substring() ? Pour quoi faire ?
    2. Quels sont les paramètres à passer à substring() pour faire ce "quoi" ? Je parle des valeurs qui vont faire que cet appel va faire ce que tu cherches à faire ? Sachant que le premier est le début de la sous-chaine à extraire et le second, la fin ?
    3. Comment obtenir ces valeurs à partir des informations (variables) que tu as déjà dans le programme ?
    4. Comment peux-tu penser qu'un char (une lettre pour simplifier) puisse être une valeur adéquate en tant que position dans une chaîne de caractères ?
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  5. #5
    Membre très actif
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Par défaut
    Pour quoi utiliser substring() ? Pour quoi faire ?
    pour extraire une chaine de caractères

    Quels sont les paramètres à passer à substring() pour faire ce "quoi" ? Je parle des valeurs qui vont faire que cet appel va faire ce que tu cherches à faire ? Sachant que le premier est le début de la sous-chaine à extraire et le second, la fin ?
    paramètres début index en int et fin index en int
    Comment obtenir ces valeurs à partir des informations (variables) que tu as déjà dans le programme ?
    ?? ce variable String bla
    Comment peux-tu penser qu'un char (une lettre pour simplifier) puisse être une valeur adéquate en tant que position dans une chaîne de caractères ?
    ???

  6. #6
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par domxaline Voir le message
    pour extraire une chaine de caractères
    Non, mais ça je m'en doute, c'est ce que fait la méthode. La question concernait le but fonctionnel de cet appel ! Pour résoudre quelle problématique ?

    Citation Envoyé par domxaline Voir le message
    paramètres début index en int et fin index en int
    C'est le sens qui est intéressant. Le type est secondaire. La méthode substring() prend des positions dans la chaîne. Il y a des int dans un programme pour lesquels ça n'a aucun sens de les utiliser comme position dans une chaîne !!!
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  7. #7
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par domxaline Voir le message
    Citation Envoyé par joel.drigo Voir le message
    Comment peux-tu penser qu'un char (une lettre pour simplifier) puisse être une valeur adéquate en tant que position dans une chaîne de caractères ?
    ???
    Ecrire du code Java n'est pas une finalité, mais un moyen. L'important c'est ce qu'on veut que le programme fasse. Et ça s'exprime avec des mots, des phrases, des constructions logiques, qui ont du sens. Ensuite seulement on l'encode, en utilisant par exemple un langage de programmation comme Java.
    C'est comme quand on veut raconter une histoire : on ne balance pas des mots les uns derrières les autres et on regarde après si ça fait des phrases, et que ces phrases forment une histoire cohérente.

    Si tu ne peux pas répondre à la question "pourquoi j'utilise un caractère comme début de sous-chaîne, alors que le début d'une sous-chaîne est un nombre ?", c'est parce que tu n'essayes pas de résoudre le problème sans écrire de code. Lorsque tu auras un algorithme fonctionnel, la traduction ne te fera pas (normalement) utiliser un caractère comme position dans une chaîne, parce que ce n'est pas la même chose.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  8. #8
    Membre très actif
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Par défaut
    La méthode substring() prend des positions dans la chaîne. Il y a des int dans un programme pour lesquels ça n'a aucun sens de les utiliser comme position dans une chaîne !!!
    aucun sens de les utiliser comme position alors on l'utilise comment?

  9. #9
    Modérateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Août 2006
    Messages
    4 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : R&D - Palefrenier programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 096
    Par défaut
    Citation Envoyé par domxaline Voir le message
    aucun sens de les utiliser comme position alors on l'utilise comment?
    Non tu as mal compris ce qu'il voulait dire.

    Dans ton cas, tu dois utiliser des int comme paramètre pour la fonction substring. (et non un char comme tu le faisait au début). Et ces paramètre sont toujours positif et si possible ne pas depasser pas la taille du string.

    Je rejoins Joel sur le fait qu'il te faut réfléchir d'abord en pseudo code, et ensuite tenter d'implementer cela en n'essayant de bien comprendre comment les fonctions "fonctionnent"
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  10. #10
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par domxaline Voir le message
    aucun sens de les utiliser comme position alors on l'utilise comment?
    On les utilise pour ceux à quoi ils servent, ce qu'il représente comme information, au sens fonctionnel. Si tu as l'age d'une personne en int, ça peut servir à plein de choses, et même parfois, on peut imaginer que ça peut servir comme paramètre d'un substring(), mais pas avec n'importe quelle chaîne, non plus, parce que l'age d'une personne n'est pas naturellement une position dans une chaîne de caractères. Ce n'est pas parce qu'une méthode prend un int en paramètre, qu'on peut lui passer n'importe quel int et que ça va donner un résultat, ou que, si c'est le cas, ce résultat soit cohérent.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  11. #11
    Membre très actif
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Par défaut
    Dans ton cas, tu dois utiliser des int comme paramètre pour la fonction substring. (et non un char comme tu le faisait au début). Et ces paramètre sont toujours positif et si possible ne pas depasser pas la taille du string.
    "comme tu le faisait au début"
    veut dire que dans ce prg ou dans l'autre prg

    "tu dois utiliser des int comme paramètre pour la fonction substring. (et non un char"
    ce pour ça j'ai mis
    code=bla.substring((int)cle,i); mais ça marché pas
    je confond tous là,

  12. #12
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par domxaline Voir le message
    ce pour ça j'ai mis
    code=bla.substring((int)cle,i); mais ça marché pas
    je confond tous là,
    C'est bien ce que je te dis : ce n'est pas le type qui compte, c'est ce que représente la variable. Que représente la variable : un caractère (peu importe son type), et ce caractère, c'est un truc que l'utilisateur a saisi, et qui s’appellerait "alphabet clé" (encore faudrait-il définir ce que ça veut dire).
    Dans quel but utiliserais-tu un caractère, là où on doit mettre quelque chose qui représente une position dans une chaîne ? Ou plus simplement, si tu as vraiment besoin d'extraire une partie de la chaîne, de quelle partie s'agit-il ? Quels sont ses positions de début et de fin, au sens fonctionnel : déterminer les variables qui contiennent ces valeurs viendra après, quand tu sauras quelles sont les informations qui sont censées te servir ici pour extraire une sous-chaîne.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  13. #13
    Membre très actif
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Par défaut
    Dans quel but utiliserais-tu un caractère, là où on doit mettre quelque chose qui représente une position dans une chaîne ? Ou plus simplement, si tu as vraiment besoin d'extraire une partie de la chaîne, de quelle partie s'agit-il ? Quels sont ses positions de début et de fin, au sens fonctionnel : déterminer les variables qui contiennent ces valeurs viendra après, quand tu sauras quelles sont les informations qui sont censées te servir ici pour extraire une sous-chaîne.
    par exemple la clé entré par utilisateur sont: kylujp
    et a deviendra k, b deviendra y,c deviendra l ainsi de suite.

    je n'ai besoin extraie une parti de la chaine, j'ai besoin seulement des characteres

    j'ai besoin seulement à prendre un charactèr par un character

    un character n'est pas un début ni fin, car il y a qu'un seul

  14. #14
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par domxaline Voir le message
    par exemple la clé entré par utilisateur sont: kylujp
    et a deviendra k, b deviendra y,c deviendra l ainsi de suite.
    Bah, déjà, ça commence mal : char cle=sc.next().charAt(0); tu ne mémorise que le premier caractère de la chaîne saisie par l'utilisateur.


    Citation Envoyé par domxaline Voir le message
    je n'ai besoin extraie une parti de la chaine, j'ai besoin seulement des characteres

    j'ai besoin seulement à prendre un charactèr par un character

    un character n'est pas un début ni fin, car il y a qu'un seul
    ça, on s'en moque : subtring(int, int) prend un début et une fin. Si c'est un seul caractère, à partir de machin (un int !), on fera subtring( machin, machin+1), mais il n'y a pas besoin de substring() pour ça : charAt(debut) fera l'affaire tout aussi bien.

    L'algorithme de ce que tu cherches à faire, c'est :

    Code pseudocode : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    String bla = une chaîne à coder
    String cle = la liste des caractères codés dans l'ordre de l'alphabet (donc le premier caractère c'est pour le 'a', le deuxième pour le 'b', etc.)
     
    pour toute les lettres (char) c de bla
     
         int pos = position de c dans l'alphabet
     
         char (ou String) caractère codé = caractère de cle à la position pos modulo la longueur de cle
     
    fin pour
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  15. #15
    Membre très actif
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Par défaut
    que pensez de mon prg
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    import java.util.Scanner;
    public class Testing5 
    {
    	public static void main(String[] args) 
    	{
    		char first[]={'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};
            //char second[]={'b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','a'};
    		char second[]={'h','y','l','u','j','p','v','r','e','a','k','b','n','d','o','f','s','q','z','c','w','m','g','i','t','x'};
            Scanner sc = new Scanner(System.in);
            System.out.println("Enter the name: ");
            String n;
            n=sc.nextLine();
            int len=n.length();
            for(int i=0;i<len;i++)
            {
             for(int j=0;j<26;j++)
             {
               char c=n.charAt(i);
            	 if(c==first[j])
              {
               int pos1=j;
               System.out.print(second[pos1]);
              }    
             }
            }

  16. #16
    Membre très actif
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Par défaut
    mais je veux que utilisateur entre la clé où est que je branche, entré utilisateur svp

  17. #17
    Modérateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Août 2006
    Messages
    4 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : R&D - Palefrenier programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 096
    Par défaut
    Citation Envoyé par domxaline Voir le message
    que pensez de mon prg
    Il semble fonctionner.

    mais je veux que utilisateur entre la clé où est que je branche, entré utilisateur svp
    ?
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  18. #18
    Membre très actif
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Par défaut
    exactement ça fonctionne

  19. #19
    Modérateur
    Avatar de Alkhan
    Homme Profil pro
    ingénieur full stack
    Inscrit en
    Octobre 2006
    Messages
    1 232
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : ingénieur full stack

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 232
    Par défaut
    bonjour,
    Citation Envoyé par domxaline Voir le message
    mais je veux que utilisateur entre la clé où est que je branche, entré utilisateur svp
    Avant la mise en place du tableau 'second' !
    Il n'y a pas de problème, il n'y a que des solutions.
    Cependant, comme le disaient les shadoks, s'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
    Si toutefois le problème persiste, la seule solution restante est de changer le périphérique qui se trouve entre la chaise et l'écran

    Mes Articles : Mon premier article est sur le language D
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  20. #20
    Membre très actif
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Par défaut
    merci pour vos aides.
    j'ai erreur message:
    Exception in thread "main" java.lang.Error: Unresolved compilation problem:
    The type of the expression must be an array type but it resolved to char

    at Testing5.main(Testing5.java:32)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    import java.util.Scanner;
    public class Testing5 
    {
    	public static void main(String[] args) 
    	{
    		char first[]={'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};
    		//char first[]={'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};
    		char second;
    		char tab[]=new char[second];
    		for(char i=0;i<second;i++)
    		{
    			System.out.println("Entrez votre clé:");
    			Scanner sc=new Scanner(System.in);
    			String str=sc.nextLine();
    			char second=str.charAt(0);
    		}
     
            System.out.println("Enter the name: ");
            String n;//=sc.nextLine();
            int len=n.length();
            for(int i=0;i<len;i++)
            {
             for(int j=0;j<26;j++)
             {
               char c=n.charAt(i);
            	 if(c==first[j])
              {
               int pos1=j;
               System.out.print(second[pos1]);
              }    
             }
            }}}

Discussions similaires

  1. java.lang.StringIndexOutOfBoundsException incompréhensible
    Par rebycM24 dans le forum Débuter avec Java
    Réponses: 2
    Dernier message: 28/02/2015, 17h29
  2. Réponses: 4
    Dernier message: 14/01/2010, 18h44
  3. java lang StringIndexOutOfBoundsException ?
    Par titof dans le forum Débuter avec Java
    Réponses: 4
    Dernier message: 05/08/2008, 14h54
  4. Réponses: 3
    Dernier message: 19/05/2006, 20h38
  5. [java.lang] Object/String --> compareTo() ou equals()
    Par wdionysos dans le forum Langage
    Réponses: 17
    Dernier message: 17/01/2006, 23h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo