Denkfehler?

Neue Frage »

Auf diesen Beitrag antworten »
Java_Beginner Denkfehler?

Meine Frage:
Hallo zusammen,

folgender Code:
code:
1:
2:
3:
4:
5:
6:
7:
8:
 public static void main(String[] args) 
    {
        int i=9, k=9;
        i /= k%5; //i = i/k%5; --> i = 9/9%5; gleiche Priorität: i = 1%5 = 1;  
        System.out.println(i);
    }



Meine Ideen:
Ich komme für i immer auf 1, sollte aber zwei sein? Wo liegt denn hier mein Fehler?

Vielen dank.
 
Auf diesen Beitrag antworten »
eulerscheZahl

Wo soll denn da eine 1 herkommen?
k%5 = 9%5 = 4
i/(k%5) = 9/4 = 2
Auf diesen Beitrag antworten »
Java_Beginner

Aber warum wird denn Modulo vor der Division abgearbeitet? Die haben doch die gleiche Priorität?
Auf diesen Beitrag antworten »
eulerscheZahl

Ein /= beinhaltet eine Zuweisung. Die wird als letzes ausgeführt. Und damit auch die Division.
 
Auf diesen Beitrag antworten »
Java_Beginner

Wow, vielen Dank, da hatte ich nicht darauf geachtet.
 
Neue Frage »
Antworten »


Verwandte Themen