Dae galera blz?
Seguinte… em Delphi se você faz isso:
if (teste1) and (teste2) then …
Se o teste1 for false ele nem entra no teste2!
Em Java, como funciona? É o mesmo esquema?
[]'s
Dae galera blz?
Seguinte… em Delphi se você faz isso:
if (teste1) and (teste2) then …
Se o teste1 for false ele nem entra no teste2!
Em Java, como funciona? É o mesmo esquema?
[]'s
Irmao, pelo q vejo ja meche com o pascal!
O mesmo codigo assim em pascal:
if (ent1 = 2) and (ent2 = 2) then
begin
writeln( ' Pascal ' );
end.
Em java:
if ( (ent1 == 2) && ( ent2 == 3 ) ) {
System.out.println( " Java " );
}
Espero q tenha ajudado!!!
Abracao e te +
Hum, não era bem isso que eu queria…
Imagine o seguinte:
Você tem uma rotina que dá um DROP em alguma tabela do banco e retorna true / false, correto? Mas essa rotina só vai ser executada se o Flag DROP for true. Ok?
Então veja isso:
Ps: executaDrop = nome da rotina que dá o DROP.
if ((DROP) && (executaDrop)) {
System.out.println("Tabela dropada");
}
O que isso faz? Bom, se o flag DROP for true e executaDrop retornar true ele mostra a msg acima na tela. Mas e se SOMENTE o flag DROP for false, o Java chega a executar a rotina executaDrop?
Acho que assim ficou mais claro!
[]'s
Sim … ele vai executar o método e vai verificar se a sua variável eh verdadeira … caso as duas sejam ‘true’ ele executa o código dentro do if …
se você quiser que ele somente verifique o valor da variável e somente com esta sendo true ele execute o método … então tem que colocar assim:
if(drop) {
if(executaDrop) {
…
}
}
[]s
Você tem certeza disso? Desculpe a dúvida, mas é que obti resultados diferentes aqui…
(resolvi testar hehe!)
Mas como isso não é para agora não me atentei muito, mas a princípio ele só executa o segundo teste se o primeiro for verdadeiro. Alguém confirma isso?
[]'s
Creio que no caso não sej ao if sua dúvida e sim o comparador…
&& é E, se coisa1 for verdaede e a coisa 2 for verdaede mostra
|| é ou , se coisa 1 for verdade ou coisa 2 for verdaed mostra
será isso???
8O
[quote=“FelipeSS_2”]Creio que no caso não sej ao if sua dúvida e sim o comparador…
&& é E, se coisa1 for verdaede e a coisa 2 for verdaede mostra
|| é ou , se coisa 1 for verdade ou coisa 2 for verdaed mostra
será isso???
8O[/quote]
Não, também não é isso. Mas fiz um teste “mais radical” e realmente aconteceu o que eu esperava… a segunda condição só foi testada sendo a primeira true!
Valeu pela ajuda!
[]'s
[quote=“mds”][quote=“FelipeSS_2”]Creio que no caso não sej ao if sua dúvida e sim o comparador…
&& é E, se coisa1 for verdaede e a coisa 2 for verdaede mostra
|| é ou , se coisa 1 for verdade ou coisa 2 for verdaed mostra
será isso???
8O[/quote]
Não, também não é isso. Mas fiz um teste “mais radical” e realmente aconteceu o que eu esperava… a segunda condição só foi testada sendo a primeira true!
Valeu pela ajuda!
[]'s[/quote]
Qual teste mais radical???
???
ta
denada :???:
creio que vc ta falando de e logico
bom eh o seguine
quando voce usa o && ele faz igual no delphi…quando encontra o primeiro false ele nao testa os outros
ex if (DROP && executeDrop) …se o drop for falso ele nao testa o execute drop…sai direto do if
masssss se voce usar o e logico…assim ô
&
ex = if (DROP & executeDrop) , mesmo se o drop for falso…ele executa o executeDrop
ele …mesmo que encontre um false…ele executa todas os outros testes…mas claro que nao entra no if
acho que eh isso
[]'s
e ai MDS
seguinte,pra sair do if quando a primeira condicao for falsa tenta o seguinte:
if(condicao1 & condicao2){
...
//seu codigo
...
} else // mais codigo...
era isso mesmo que vc precisava?
t+!!!
Acho q a pergunta é simples:
se ele verifica a segunda condição se a primeira for false.
A resposta é não!
se a primeira for false, ele já sai do if
tipo
if ( obj != nulll && obj.getValor() > 0 ){
}
Se a variável obj for nula, ele nem testa a segunda condição. Se ele testasse, daria NullPointerException, mas não dá.
[]'s
[quote=“DiegoDiSouza”]e ai MDS
seguinte,pra sair do if quando a primeira condicao for falsa tenta o seguinte:
if(condicao1 & condicao2){
...
//seu codigo
...
} else // mais codigo...
era isso mesmo que vc precisava?
t+!!![/quote]
Acho que é ao contrário do que você disse né?
Pra sair quando a primeira for false uso &&
E para continuar mesmo a primeira sendo false uso &!
Correto? Corriga-me se eu estiver errado!
[]'s
Exatamente isso andersonra e JavaNight! :] Obrigado pela ajuda!
Eu declarei uma variável e fiz algo assim:
if (qualquerCoisa && rotinaQueAlteraVariavel) {
...
}
Setei “qualquerCoisa” como true e percebi que a variavel foi alterada atravez da rotin “rotinaQueAlteraVariavel”, e depois fiz qualquerCoisa = false e a rotina não foi executada! :]
[]'s