Cannot convert from String to int

Résolu/Fermé
gege.2007 Messages postés 25 Date d'inscription vendredi 13 février 2015 Statut Membre Dernière intervention 14 décembre 2016 - 20 avril 2015 à 21:09
gege.2007 Messages postés 25 Date d'inscription vendredi 13 février 2015 Statut Membre Dernière intervention 14 décembre 2016 - 20 avril 2015 à 22:39
Bonjour,
comme vous avez pu le lire j'ai cette erreur dans mon code mais je ne sais pas comment y pallier.
Voici mon code:

public void jouerSudoku() {
		

		int[][] tab2 = new int[9][9];
		

		int condition_ligne = 0;

		while (condition_ligne == 0) {
			System.out.print(" Veuillez choisir une ligne:");

			_ligne = sudoku.nextLine();
			
			if (Integer.parseInt(_ligne) > tab2.length) {

				System.out
						.println("Vous devez inserez un nombre compris entre 1 et 9");

				condition_ligne = 0;
			}

			else if (Integer.parseInt(_ligne) < tab2.length)

			{

				System.out
						.println("Vous devez inserez un nombre compris entre 1 et 9");

				condition_ligne = 0;
			}

			else {

				condition_ligne = 1;
				

			}

		}




A voir également:

4 réponses

KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
20 avril 2015 à 21:44
Bonjour,

Sur quelle ligne porte le message d'erreur ?

De plus de quel type est la variable
_ligne
? (qui soit dit en passant devrait être déclarée dans la méthode, pas ailleurs...)
1
gege.2007 Messages postés 25 Date d'inscription vendredi 13 février 2015 Statut Membre Dernière intervention 14 décembre 2016
20 avril 2015 à 21:49
Le message d'erreur est ligne 12 pour la variable _ligne il s'agit d'un int, en fait les variables sont déclarées mais dans une autre partie du programme.
0
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
20 avril 2015 à 21:58
"les variables sont déclarées mais dans une autre partie du programme"
Il n'y a pas de raison, ce n'est pas comme cela que cela doit être fait en Java...

"la variable _ligne il s'agit d'un int"
C'est ça ton problème, tu le traites partout comme si c'était un String.
_ligne = sudoku.nextLine();
nextLine renvoie un String,
Integer.parseInt(_ligne)
, parseInt s'applique à un String...
0
gege.2007 Messages postés 25 Date d'inscription vendredi 13 février 2015 Statut Membre Dernière intervention 14 décembre 2016
20 avril 2015 à 22:05
D'accord je vois, mais par quoi il faudrait que je remplace _ligne=sudoku.nextLine() pour que cela fonctionne avec un int?
0
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
20 avril 2015 à 22:27
Exactement la même chose que tu as mis partout pour transformer le String en int, tu dois utiliser Integer.parseInt...
0
gege.2007 Messages postés 25 Date d'inscription vendredi 13 février 2015 Statut Membre Dernière intervention 14 décembre 2016
20 avril 2015 à 22:39
Mais oui suis-je bete, merci beaucoup de ton aide.
Bonne soirée
0