CodeGym/Java-Blog/Random-DE/Ganzzahlige division Java
Autor
Alex Vypirailenko
Java Developer at Toshiba Global Commerce Solutions

Ganzzahlige division Java

Veröffentlicht in der Gruppe Random-DE

Was ist eine ganzzahlige Division in Java?

Die Division in Java erfolgt normalerweise wie die reguläre Division in der Mathematik oder im echten Leben. Der Rest wird jedoch einfach verworfen. Wenn Sie beispielsweise 9 durch 2 dividieren, ist der Quotient 4 und der Rest ist 1. Ganzzahldivision Java - 1Im wirklichen Leben lautet die Antwort 4,5 oder 4½. Wenn Sie die gleiche Berechnung mit int in Java durchführen, lautet Ihre Antwort 4. Es wird nicht auf die nächste ganze Zahl gerundet (wie ~4,5 = 5) 1, da ein Rest verworfen wird.

Beispiel 1 [Rest ist 0]

Die Ganzzahldivision in Java funktioniert perfekt für alle Fälle, in denen der Divisor den Dividenden vollständig teilt (Ganzzahl dividiert durch x Ganzzahl). Die Antwort ist eine ganze Zahl und der Integer-Datentyp kann sie ohne Überlauf aufnehmen. Somit kommt es zu keinem Datenverlust. Schauen Sie sich zum Beispiel den folgenden Snippet an.
public class IntegerDivision {

	public static void main(String[] args) {

		int dividend = 100;
		int divisor = 5;
		int quotient = dividend / divisor;

		//Dividend completely divides the divisor
		System.out.println(dividend + " / " + divisor + " = " + quotient);

		dividend = 143;
		divisor = 11;
		quotient = dividend / divisor;

		//Dividend completely divides the divisor
		System.out.println(dividend + " / " + divisor + " = " + quotient);
	}
}
Ausgang
100 / 5 = 20 143 / 11 = 13

Beispiel 2 [Rest ist nicht 0]

Für alle Divisionsfälle, bei denen der Rest nicht 0 ist, wird das Endergebnis auf die größte teilbare ganze Zahl (9/2 = 4) reduziert. Dies wird im kommenden Beispiel gezeigt. Es kann vorkommen, dass Sie den tatsächlichen Quotienten im Dezimalformat benötigen. In diesem Fall können Sie den Datentyp float oder double verwenden. Wenn Sie den Quotienten jedoch auf den nächsten ganzzahligen Wert runden möchten, können Sie wie folgt vorgehen.
public class IntegerDivision {

	public static void main(String[] args) {

		int dividend = 9;
		int divisor = 2;
		int quotient = dividend / divisor;

		// Case I - Dividend does not divide the divisor completely
		// The quotient is chopped / truncated
		System.out.print("Integer division \t\t" );
		System.out.println(dividend + " / " + divisor + " = " + quotient);

		// Case II - Mathematical or real life division
		// Use float or double data type to get the actual quotient

		double actualQuotient = (double)dividend / divisor;
		System.out.print("Mathematics division \t\t" );
		System.out.println((double)dividend + " / " + divisor + " = " + actualQuotient);

		// Case III - Integer Division with rounding off
		// the quotient to the closest integer

		long roundedQuotient = Math.round((double)dividend / divisor);
		System.out.print("Round off int division \t\t" );
		System.out.println((double)dividend + " / " + divisor + " = " + roundedQuotient);

	}
}
Ausgang
Ganzzahldivision 9 / 2 = 4 Mathematikdivision 9,0 / 2 = 4,5 Integerdivision abrunden 9,0 / 2 = 5

Erläuterung

Fall I und Fall II sind selbsterklärend. Für Fall III können Sie es in den folgenden Schritten aufschlüsseln.
  • Zuerst müssen Sie die Dividende in eine doppelte Dividende umwandeln.

  • Führen Sie die reguläre Java-Int-Division durch.

  • Runden Sie den Quotienten mit der Methode Math.round() ab .

  • Verwenden Sie den Datentyp long, um den gerundeten Quotienten zu speichern.

  • Los geht's! Sie haben Ihre gewünschte Ausgabe als Quotient.

Abschluss

Die Division mit Java-Ganzzahlen kann am Anfang schwierig aussehen. Aber mit etwas Übung und Wiederholung gelingt es Ihnen, es in den Griff zu bekommen. Üben Sie so viel wie möglich. Sie können jederzeit gerne auf unseren Beitrag zurückkommen. Beifall! Um das Gelernte zu vertiefen, empfehlen wir Ihnen, sich eine Videolektion aus unserem Java-Kurs anzusehen
Kommentare
  • Beliebt
  • Neu
  • Alt
Du musst angemeldet sein, um einen Kommentar schreiben zu können
Auf dieser Seite gibt es noch keine Kommentare