uma duvida tem como identificar no Iterator algum metodo que me traga o valor que está
incrementando como fosse o “FOR” pois quero executar um metodo uma unica vez …
se alguém pudr me ajudar agradeceria…
abs
for (Iterator iterator = usuariosdoctos.iterator(); iterator.hasNext();) {
User user = (User) iterator.next();
if (1==1){
System.out.println("e o que quero fazer uma vez");
}
System.out.println("valor ="+iterator);
System.out.println("Usuario Id ="+user.getId());
System.out.println("Usuario Nome ="+user.getName());
System.out.println("Usuario Email ="+user.getEmail());
System.out.println("_________________________________________");
}
uma duvida tem como identificar no Iterator algum metodo que me traga o valor que está
incrementando como fosse o “FOR” pois quero executar um metodo uma unica vez …
se alguém pudr me ajudar agradeceria…
abs
for (Iterator iterator = usuariosdoctos.iterator(); iterator.hasNext();) {
User user = (User) iterator.next();
if (1==1){
System.out.println("e o que quero fazer uma vez");
}
System.out.println("valor ="+iterator);
System.out.println("Usuario Id ="+user.getId());
System.out.println("Usuario Nome ="+user.getName());
System.out.println("Usuario Email ="+user.getEmail());
System.out.println("_________________________________________");
}
[/code][/quote]
um contadorzinho não serve?
[code]int i = 0;
for (Iterator iterator = usuariosdoctos.iterator(); iterator.hasNext();) {
i++;
User user = (User) iterator.next();
if (i == 1){
System.out.println("e o que quero fazer uma vez");
}
System.out.println("valor ="+iterator);
System.out.println("Usuario Id ="+user.getId());
System.out.println("Usuario Nome ="+user.getName());
System.out.println("Usuario Email ="+user.getEmail());
System.out.println("_________________________________________");
}
Para quê vc vai somar i para todos os passos do loop ?
Ele só precisa de testar se é o primeiro. Um variável com 2 estados (boolean) é suficiente.
quanto à questão. Algo está errado no seu modelo se vc precisa executar apenas na primeira iteração do loop.
Ou vc retira essa parte do loop e a executa antes (muito melhor), ou usa um flag booleano (pior)
[quote=sergiotaborda][quote=wbdsjunior]
um contadorzinho não serve?
[/quote]
Para quê vc vai somar i para todos os passos do loop ?
Ele só precisa de testar se é o primeiro. Um variável com 2 estados (boolean) é suficiente.[/quote]
você tem toda razão.
Com certeza, o que o Sergio falou faz muito mais sentido:
System.out.println("e o que quero fazer uma vez");
for (Iterator iterator = usuariosdoctos.iterator(); iterator.hasNext();) {
User user = (User) iterator.next();
System.out.println("valor ="+iterator);
System.out.println("Usuario Id ="+user.getId());
System.out.println("Usuario Nome ="+user.getName());
System.out.println("Usuario Email ="+user.getEmail());
System.out.println("_________________________________________");
}
Você ainda está usando Java 4?
Por que a partir do Java 5 há formas muito melhores de se fazer isso, evitando os casts, por exemplo.