Split - exemplo livro head firs java

3 respostas
j.silvestre

Bom dia amigos

tenho a seguinte string

String lixo =( "aa/bb/cc/dd/ee/ff/gg/hh/");

o metodo abaixo é do livro use a cabeça java da Kathy Sierra

peguei no site do livro:

private void makeCard(String lineToParse) {
   
      StringTokenizer parser = new StringTokenizer(lineToParse, "/");
      if (parser.hasMoreTokens()) {
         QuizCard card = new QuizCard(parser.nextToken(), parser.nextToken());
         cardList.add(card);
      }
   }

este é o metodo que vem impresso no livro pag 322

private void makeCard(String lineToParse) {

  
  String[] result = lineToParse.split("/");
  QuizCard card = new QuizCard(result[0],result[1]);
  cardList.add(card);
  System.out.println("made a card");
 int thesize =cardList.size(); // debug meu
  System.out.println("tamanho do Array cardList : " + thesize); // debug meu
 
   }

o problema é que nas duas versões consigo salvar apenas “aa” e “bb” no Array cardList. onde esta o equivoco ?

sds

j.silvestre

3 Respostas

alberto_ribeiro

bom dia nesse seu exemplo troque o if pelo while

DE

private  void makeCard(String lineToParse) {  
   
     StringTokenizer parser = new StringTokenizer(lineToParse, "/");  
     if (parser.hasMoreTokens()) {  
        QuizCard card = new QuizCard(parser.nextToken(), parser.nextToken());  
        cardList.add(card);  
     }  
 }

PARA

private  void makeCard(String lineToParse) {  
   
     StringTokenizer parser = new StringTokenizer(lineToParse, "/");  
     while(parser.hasMoreTokens()) {  
        QuizCard card = new QuizCard(parser.nextToken(), parser.nextToken());  
        cardList.add(card);  
     }  
 }

será gerado quatro objetos do tipo QuizCard cada um com um par de letras

Ex.

QuizCard aa e bb
QuizCard cc e dd
QuizCard ee e ff
QuizCard gg e hh

evertonsilvagomesjav

ueh vc so ta passando a primeira e a segunda posição logo será esses dois mesmo.

QuizCard card = new QuizCard(result[0],result[1]); cardList.add(card);

j.silvestre

Obrigado amigos.

sds

j.silvestre

Criado 28 de abril de 2011
Ultima resposta 28 de abr. de 2011
Respostas 3
Participantes 3