Petit problème trivial avec les tableaux

Petit problème trivial avec les tableaux - Java - Programmation

Marsh Posté le 12-03-2008 à 01:10:08    

Salut,
Je débute en JAVA, j'apprends ça sur un bouquin depuis 1 semaine et je connais encore peu de choses...mon objectif est de faire un jeu de poker.
1ère étape, je voudrais que mon prog identifie ma main, du genre avec une main : AP 3T 2C AT AC il me dise que j'ai un brelan d'As... enfin ça importe peu, voila le début du maigre code :  
 
import java.util.*;
public class poker{
 public static void main(String [] arg){
  int i,j,k,m;
  Scanner lecture=new Scanner(System.in);
  String [] notes=new String[5];
  String [] cartes={"A","2","3","4","5","6","7","8","9","10","V","D","R","P","C","K","T"};
  int [] nombredecartes=new int[17];
   
   
  System.out.println("Quelle est la 1ère carte?  : " );
  notes[0]=lecture.next();
   
  System.out.println("Quelle est la 2ème carte?  : " );
  notes[1]=lecture.next();
 
  System.out.println("Quelle est la 3ème carte?  : " );
  notes[2]=lecture.next();
 
  System.out.println("Quelle est la 4ème carte?  : " );
  notes[3]=lecture.next();
   
  System.out.println("Quelle est la 5ème carte?  : " );
  notes[4]=lecture.next();
   
  System.out.println("La 1ère carte est" + notes[0]);
  System.out.println("La 2nde carte est" + notes[1]);
  System.out.println("La 3ème carte est" + notes[2]);
  System.out.println("La 4ème carte est" + notes[3]);
  System.out.println("La 5ème carte est" + notes[4]);
   
  for(i=0; i<=4; i=i+1)
  {
   for(j=0; j<=16; j=j+1)
   {
    if(notes[i].charAt(1)=cartes[j]) nombredecartes[j]=nombredecartes[j]+1;
    if(notes[i].charAt(2)=cartes[j]) nombredecartes[j]=nombredecartes[j]+1;

  }
 
 }
 for(k=0; k<=16; k=k+1) System.out.println("Vous avez " +nombredecartes[k]+"cartes"+cartes[k]);
}
 
}
 
La ou ca cloche :  
Je définis un tableau avec " int [] nombredecartes=new int[17];"  donc en fait par exemple "nombredecartes[2]" (2è élément du tableau nombredecartes) est une valeur fixe, pas une variable, enfin ça bloque en fin de programme quand j'écris : nombredecartes[j]=nombredecartes[j]+1; , logique puisque c'est pas une variable, c'est d'ailleurs ce que me renvoie Jcreator mon compilateur...
 
:\Documents and Settings\jd\poker.java:37: unexpected type
required: variable
found   : value
                if(notes[i].charAt(2)=cartes[j]) nombredecartes[j]=nombredecartes[j]+1;
 
Comment pourrais je remplir mon tableau de variables pour compter mon nombre de cartes?
Dans mon bouquin, ils parviennent à placer des objets dans des cases de tableau, à l'aide d'une autre classe, c'est ce qu'il me faudrait à priori, mais je n'ai rien compris, et rien trouvé sur google ... je serais plus explicite si y'a besoin, mais je suis persuadé que ceci vous semblera trivial donc bon ;)
 
Merci de m'aider :)
Au fait si vous avez des idées, je m'y prends ptete comme un pied pour entreprendre un Poker, n'hésitez pas ^^


Message édité par pepito_mi_corazon le 12-03-2008 à 01:19:46
Reply

Marsh Posté le 12-03-2008 à 01:10:08   

Reply

Marsh Posté le 12-03-2008 à 08:30:34    

Dans tes lignes


if(notes[i].charAt(1)=cartes[j]) nombredecartes[j]=nombredecartes[j]+1;
if(notes[i].charAt(2)=cartes[j]) nombredecartes[j]=nombredecartes[j]+1;


 
 
Premier problème:
L'erreur que tu décris n'est pas une erreur sur ton tableau mais dans ta comparaison.
En java on test l'égalité avec == ou bien la méthode equals (voir un tuto pour bien comprendre la différence entre les 2).
 
Deuxième problème:
Tu essayes de comparer un type char avec un objet String.


---------------
Light is right
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed