Was is Inkrement Dekrement

Status
Nicht offen für weitere Antworten.

NullAhnung85

Mitglied
Hallo Liebe Javaprogrammierer,

ich ein absoluter Newbie und erarbeite gerade ein paar Javaprojekte.
Habe von der Schule das Buch Java 4U erhalten, dasich nun durcharbeite.
Bin gerade bei dem Thema Inkrement / Dekrement, das es von C++ kommt und man das mit -- und ++ abkürzen kann ist mir inzwischen alles klar, aber... was soll das wofür brauche ich das?

Habe hier folgendes Programm und weiss nich warum und wieso.

Code:
public class DekrementInkrement
{
	public static void main(String argv[])
{
	int intZahl;
	intZahl = 5;
	
	intZahl++;//Postinkrement
	System.out.println(intZahl); //Ergebnis = 6
	System.out.println(intZahl++);//Ergebnis = 6
	System.out.println(intZahl);//Ergebnis = 7
	System.out.println(++intZahl);// Ergebnis = 8
	System.out.println(intZahl); // Ergebnis = (
	System.out.println(intZahl--);//Ergebnis = 8
	System.out.println(intZahl);//Ergebnis = 7
	System.out.println(--intZahl);	//Ergebnis = 6
	System.out.println(intZahl);
	
		
}//public class DekrementInkrement

}//public static void main(String argv[])

Ich würde euch bitten in "Alltagssprache" zu antworten bin da noch nicht so Fit mit den Bgriffen.


Habe noch eine Frage:

Code:
/* Programm zum Thema Rechenarten
 * Autor: Armin Schweinfurth*/
 
 public class RechenArten
 { 
  public static void main(String argv[])
 {
 	
 	int a, b, c;
 	a = 5;
 	b = 3;
 	c = a / b;
 	
 	System.out.println(c); //Ergebnis 1, da 5 durch 3 genau einmal ganz teilbar ist.
 	System.out.println("");
 	
 	c = a % b;
 	
 	System.out.println(c); //Ergebnis 2, da 5 druch 3 den Rest 2 besitzt
 	
 	//Interessant: java beachtet die Punkt vor Strich-Regel.
 	//Multiplikation und Division vor Addition und Subtraktion
 	
 	
 }//public class RechenArten
 
 }//public static void main(String argv[])

was macht dieses int? Das es de Integer ist weiss ich, aber was macht der?

Bitte auch wieder Alltagssprache.

Viele Grüße

K.A.
 
N

na-oma

Gast
Wenn du ne zahl hast, sagen wir 8, dann heisst
8++
nix anderes als 9.
also quasi der nachfolger der zahl. 8-- entspräche 7, dem vorgänger.

int i;
heisst, dass du einen speicherplatz für eine Ganzzahl (natürliche zahl) reservierst und diesen mit i bezeichnest.

i = 8;
weist dem mit i bezeichneten speicherplatz den wert 8 zu.

i++; macht das gleiche wie oben, es wird der wert der am Speicherplatz mit dem namen i steht um 1 erhöht.

i++ ist äquivalent zu i=i+1; was wiederum äquivalent zu i+=1; ist.

es gibt nen unterschied zwischen i++ und ++i!

wenn ich sage
System.out.println(i++);
wird der Ausdruck "i++" erst zu dem aktuellen wert von i ausgewertet (z.b. 8), dann an die Ausgabe-funktion übergeben. Erst dann! wird i um 1 erhöht/inkrementiert (z.b. auf 9).

System.out.println(++i);
hier wird der Ausdruck "++i" zu i+1 ausgewertet, d.h. das i um eins erhöht. Dann erst wird die ausgabefunktion mit dem schon erhöhten wert aufgerufen.


Interessante fälle sind so sachen wie:

funktion(i++, i); oder funktion(++i, i);

wer das mal in c probiert hat, weiss wovon ich spreche :)
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben