mboost-dp1

Java; OR-operatoren


Gå til bund
Gravatar #1 - horsepower
8. dec. 2005 11:38
Det er muligt at mit spørgsmål er mere eller mindre almen viden, og så beklager jeg, men hvis det er, så forstår jeg ikke hvorfor jeg ikke har kunnet finde noget på Hvordan.

Jeg er ved at lære Java, og jeg sidder og skal lave en if() sætning hvor jeg har 5 betingelser, og bare én af dem er sand, skal den gøre noget. Jeg har prøvet med den åbenlyse:

if(betingelse1 || betingelse2 || betingelse3 || betingelse4 || betingelse5)

Men det virker ikke :-/

Er der en der kan fortælle mig hvordan man kan lave sådan en if() sætning?
Gravatar #2 - Cyrack
8. dec. 2005 12:04
kan du paste kode? for jeg tror ikke det er syntaksen i if-sætningen... den ser fin nok ud.
Gravatar #3 - Simm
8. dec. 2005 12:15
5 betingelser? Så ville jeg nok overveje at bruge Switch istedet
Gravatar #4 - Cyrack
8. dec. 2005 12:24
Simm: hvorfor? hvis bare en er true så skal det åbenbart gøre det samme...
Gravatar #5 - amokk
8. dec. 2005 14:01
er det strings du checker på? i så fald skal du skrive

var.equals("noget")

i stedet for var=="noget"

en == operator sammenligner en variabels indhold, men en string er et objekt, og indeholder derfor blot en reference til et sted memory hvor tekst-strengen står - derfor vil 2 strings med samme tekst-værdi opfattes forskellige, medmindre man bruger .equals som sammenligner indholdet af de 2 objekter og ikke blot deres reference.
Gravatar #6 - Simm
8. dec. 2005 15:32
#4: ja, det er også bare en vane fra min side af ;)
Gravatar #7 - oleo
8. dec. 2005 20:14
#5
Men nu virker java så smart, at netop Strings med samme indhold referere til samme sted i memoryen, dette spare memory, og betyder også at Strings godt kan sammenlignes med == , dette spare processor kræft, da .equals() løber strengende igennem og tester chars.
Gravatar #8 - amokk
8. dec. 2005 20:57
#7 det er nok rigtigt at det i enkelte tilfælde vil virke, men for en sikkerheds skyld bør man bruge .equals()

er dog ikke så meget inde i hvornår det i praksis virker og ikke virker...
Gravatar #9 - oleo
8. dec. 2005 21:18
#8 Jeg ved godt der er "problemer" med dette.

Personligt bruger jeg også altid .equals(), men forstår ikke hvorfor det andet ikke altid virker.

Jeg har oprettet tråd om dette :
http://www.newz.dk/forum/item/60931
Gå til top

Opret dig som bruger i dag

Det er gratis, og du binder dig ikke til noget.

Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.

Opret Bruger Login