<= mit switch oder ähnlichem?

Status
Nicht offen für weitere Antworten.

mithandril

Mitglied
hiho

ich möchte gerne einem int wert eine zahl zuweisen je nach dem was in einem anderem drinne steht also z.b.

wert a = 100 wenn wert b zwischen 0-10 liegt
wert a = 150 wenn wert b zwischen 10-20 liegt
etc...

da dies aber nicht mit switch geht und ich keine lust habe bzw es auch nicht wirklich guter style ist das mit if zu machen , wollte ich fragen ob es
da eine andere möglichkeit gibt?

mfg
 
Hallo,

Code:
if (b>=0 && b<10) {
  a = 100;
} else if (b >=10 && b<20) {
 a= 150;
}
...
Wie wäre es damit?

Oder kann man rechnen:
a=200 b>=20 && b<30...usw. ?

MfG
Karl Heinz
 
sry hatte das if in meiner frage vergessen ...

wollte das also nicht mit if machen weil das n paar mehr sachen sind und ich das nicht wirklich schön finde... aber wenns keine andere einfache lösung gibt dann muss ich das wohl so machen
 
wenn das ganze allgemeingültig durch nen algorithmus beschreibbar ist... schreib ne methode, die aufgrund der eingabe, die entsprechende ausgabe ergibt... z.B. könntest du machen:

Code:
public int f(int b) {
   return 100+(((b/10)+1)*50);
}
... ungetestet - nur schnell mal angedacht 😉

Edit: mist 😉 ... 1. zu spät und 2. auch noch schlechter! 😉
 
ne doch nich 😉 ... also meiner geht zwar auch nich, aber mit modulo kanns auch nicht klappen, das hier müsste gehn, wenns auch nich so hübsch kurz aussieht, könnte man mit dem ?-operator noch zu nem 1-zeiler werden lassen.

Code:
public static int f(int b) {
   int c = 0;
   if (b%10 != 0 || b==0)
      c = 1;
   return 50+(((b/10)+c)*50);
}
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben