CodeGym /Java blog /Tilfældig /Heltals division Java
John Squirrels
Niveau
San Francisco

Heltals division Java

Udgivet i gruppen

Hvad er heltalsdeling i Java?

Division i Java foregår normalt ligesom almindelig division i matematik eller det virkelige liv. Men det kasserer bare resten. For eksempel, hvis du dividerer 9 med 2, er kvotienten 4, og resten er 1. Heltalsdivision Java - 1I det virkelige liv er svaret 4,5 eller 4½. Hvis du udfører den samme beregning med int i Java, vil dit svar være 4. Det er ikke afrundet til det nærmeste heltal (som ~4,5 = 5) 1, da en rest bliver smidt væk.

Eksempel 1 [Resten er 0]

Heltalsdivisionen i Java fungerer perfekt til alle de tilfælde, hvor divisoren deler dividenden fuldstændigt ( heltal divideret med x heltal). Svaret er et helt tal, og heltalsdatatypen kan indeholde det uden overløb. Derfor er der intet tab af data. Tag for eksempel et kig på følgende uddrag.

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);
	}
}
Produktion
100 / 5 = 20 143 / 11 = 13

Eksempel 2 [Resten er ikke 0]

For alle divisionstilfælde, hvor resten ikke er 0, vil det endelige resultat blive skåret af til det største delelige heltal (9/2 = 4). Dette vil blive udstillet i det kommende eksempel. Der kan være tidspunkter, hvor du har brug for den faktiske kvotient i decimal. I det tilfælde kan du bruge flydende eller dobbelt datatype. Men hvis du ønsker at runde kvotienten af ​​til nærmeste int, kan du gøre følgende.

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);

	}
}
Produktion
Heltals division 9 / 2 = 4 Matematik division 9,0 / 2 = 4,5 Afrund int division 9,0 / 2 = 5

Forklaring

Case I og Case II er selvforklarende. For Case III kan du opdele det i de følgende trin.
  • Først skal du konvertere udbyttet til en fordobling.

  • Udfør den almindelige Java int division.

  • Afrund kvotienten ved hjælp af Math.round() metoden.

  • Brug lang datatype til at gemme den afrundede kvotient.

  • Værsgo! Du har dit ønskede output som kvotient.

Konklusion

Division med Java-heltal kan se vanskelig ud i begyndelsen. Men med lidt øvelse og gentagelse kan du få fat i det. Øv så meget du kan. Du er velkommen til at vende tilbage til vores indlæg, når du har lyst. Skål! For at styrke det, du har lært, foreslår vi, at du ser en videolektion fra vores Java-kursus
Kommentarer
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION