If de ntro do for

29 respostas
S

como faço um if dentro de um for!!!
obrigado

29 Respostas

tRuNkSnEt
for (int i =0; i < 10; i++) {
   if(i==5) {
      break;
   }
}

É bom dar uma lidinha de vez em quando em um livro em!!

S

valeu mesmo!!!

hodrigohamalho

kkkk, google pra que né…

watsonpassos

Olá,

Toda dúvida nao é coisa idiota.
O exemplo que o amigo acima deu foi:

  1. for (int i =0; i < 10; i++) {
  2. if(i==5) {
  3. break;
    
  4. }
  5. }

Use o Equals, vai ficar melhor.

  1. for (int i =0; i < 10; i++) {
  2. if(i.Equals(5)) {
  3. break;
    
  4. }
  5. }
hodrigohamalho

por que fica melhor?

hodrigohamalho

E quando disse: google pra q?
não disse que a dúvida do colega era idiota, só acredito que existem dúvidas que não precisam de abrir um tópico, mas apenas um pouco, pouco mesmo, de pesquisa.

abraço

watsonpassos

Porque se algum dia ele comparar uma String com um valor podera acabar usando o == do tipo

String x;

if (x==¨a¨) {isso é errado, porque esta comparando na memória e não no java}

o correto seria

if (x.equals(¨a¨))

Tem que tomar cuidado.

A questão é que ele deve ser novo com java assim como um dia fomos.

Watson Passos

Marky.Vasconcelos

Sim… ele pode ser novo… por isso mesmo professores preferem passar comparações com == ao invés de equals… assim não precisam ensinar antes sobre métodos e retornos.

Mais pra frente todos aprendem.

watsonpassos

Ok, mais qque fique claro que comparações com == devem ser utilizadas apenas para comparações com objetos e não com tipos primitivos.

Abraços!

Watson Passos

B

watsonpassos:
Ok, mais qque fique claro que comparações com == devem ser utilizadas apenas para comparações com objetos e não com tipos primitivos.

Abraços!

Watson Passos

É justamente o contrário.

== deve ser usado somente com primitivos.

watsonpassos

Bruno, da uma pesquisada melhor, == é para comparar Objetos e nao primitivos.
Google pra vc.

B

watsonpassos:
Bruno, da uma pesquisada melhor, == é para comparar Objetos e nao primitivos.
Google pra vc.

Eu recomendo VOCÊ tomar uma aula de Java primeiro.

http://java.sun.com/docs/books/tutorial/java/nutsandbolts/op2.html

watsonpassos

Ok, eu vou aprender. Mais se vc não se colocar a disposição de aprender também vai falar essa besteira pra todo mundo.
== é para comparar objetos.
Veja no artigo:

http://www.guj.com.br/posts/list/60860.java

Abraços!

Watson Passos

B

Falar besteira pra todo mundo? Eu tirei a certificação de programador para Java 6 justamente para não ficar dizendo isso.

Se quiser saber sobre operadores de igualdade, consulte o livro da Kathy Sierra sobre SCJP 5, página 164.

watsonpassos

Ok. Vou estudar, mais fica a dica pra vc.
Certificação é bom, mais a pratica vai te mostrar a realidade do negócios.

Abraços!

B

watsonpassos:
Ok. Vou estudar, mais fica a dica pra vc.
Certificação é bom, mais a pratica vai te mostrar a realidade do negócios.

Abraços!

Digo o mesmo.

watsonpassos

Amém!

taaqui

So um negocio, primitivos não herdam equals da classe object.

1. for (int i =0; i < 10; i++) { 2. if(i.Equals(5)) { 3. break;

Isso nunca vai funcionar :smiley: , me corrijam se eu estiver errado.

tRuNkSnEt

Caracasssssssssssssssss … nunca vi um cara falar tanta merda seguida sozinho. Meu deus, apaguem os post do watsonpassos antes que alguem ache que ele esta certo …

i.equals(5) nunca vai funcionar. O correto também é equals() e nao Equals() - Java é case sensitive.
Para comparar primitivos use ==.

watsonpassos:
Bruno, da uma pesquisada melhor, == é para comparar Objetos e não primitivos.
Google pra vc.

<0> Cruzes… Tampem os ouvidos.

smarcelo_br

Caro watsonpassos, acho que você se enganou nessa…
O operador ‘==’ é muito usado para comparar primitivos mesmo.
Quando se usa o operador ‘==’ para comparar referências para objetos, você está testando se ambas as referências apontam para a mesma instância do objeto.
Ou seja, com ‘==’ você não testa se ambos objetos têm o mesmo valor/conteúdo. Isto inclusive está claro no link que você mesmo enviou.

victorwss

watsonpassos:

i.equals(5) é algo idiota.
Você está fazendo um autoboxing inútil, que consome memória e é muito mais complexo para o processador. Isso é uma bela perda de performance!
USE O == NESTE CASO!
USE O == PARA COMPARAR TIPOS PRIMITIVOS.

Ah, e antes que você venha falar para eu estudar melhor, te digo que já fui professor de Java e tenho 3 certificações em java.
E antes que venha me falar sobre realidade dos negócios, te digo que trabalho com java quase que diariamente a mais de três anos.

Então, se vier falar besteira, por favor, não insista na besteira.

Ah sim, e como o amigo já disse aí em cima, equals é com letra minúscula!

panthovillas

watsonpassos, vc interpretou errado o link do post que passou… nele fala exatamente o contrario do que vc disse…

[]'s

Nykolas_Lima

O mlk nunca mais vai postar no forum de vergonha acho!

ahushuahuahuuha

J

equals em tipo primitivo nem existe…

leandronsp

watsonpassos:
Ok, mais qque fique claro que comparações com == devem ser utilizadas apenas para comparações com objetos e não com tipos primitivos.

Abraços!

Watson Passos

???
:shock:
Estou chocado não pelo fato de ele falar oq não sabe (mesmo pq sei pouco também), mas pelo fato de ficar insistindo e discutindo com os colegas que tem ampla experiência na comunidade.

leandronsp

watsonpassos:
Ok. Vou estudar, mais fica a dica pra vc.
Certificação é bom, mais a pratica vai te mostrar a realidade do negócios.

Abraços!


:shock:

murilosys

rs

esse tópico foi ótimo pra minha auto estima

:smiley:

adriano_si

murilosys:
rs

esse tópico foi ótimo pra minha auto estima

:smiley:

Também ví que não estou tão mal a esse ponto… Caracaaaaaa rachei de rir… sério… muito sem noção… ele nem tentou compilar o que escreveu… quando eu era inciante eu tentava compilar antes de dizer alguma coisa… daí se alguém me corrigisse por causa de performance de código agradecia e aprendia com o erro…

Mas caracaaaa… muito Sem noção… hauahuahauahuahauahauhaua… Aê Watson… na boa mano… não saia do fórum não, volte aí pra gente aprender Java juntos… é assim que se aprende mesmo… quebrando a cara com os erros…

Abraços :wink:

Thiago_Luis

Foi apenas um engano (Um GRANDE engano).

Ele vai rever, estudar e reformular o que ele postou aqui e vai nos ajudar muito ainda no GUJ (assim espero…).

Abraço

Criado 27 de março de 2009
Ultima resposta 8 de mai. de 2009
Respostas 29
Participantes 16