Java:
Avrunding av tall

Hvordan:

Java tilbyr flere måter å runde av tall på. Her er en rask demo med Math.round(), BigDecimal, og DecimalFormat.

public class RoundingDemo {
    public static void main(String[] args) {
        double num = 123.4567;

        // Bruker Math.round()
        long roundedNum = Math.round(num);
        System.out.println(roundedNum); // Utdata: 123

        // Bruker BigDecimal for mer kontroll
        BigDecimal bd = new BigDecimal(num).setScale(2, RoundingMode.HALF_UP);
        double roundedBigDecimal = bd.doubleValue();
        System.out.println(roundedBigDecimal); // Utdata: 123.46

        // Bruker DecimalFormat
        DecimalFormat df = new DecimalFormat("#.##");
        String formattedNum = df.format(num);
        System.out.println(formattedNum); // Utdata: 123.46
    }
}

Dypdykk

Historisk har det å runde av tall vært essensielt for analoge beregninger og har blitt overført til digital databehandling for effektivitet og nøyaktighet. Avrundingsfeil, som de fra flytpunkt-aritmetikk, demonstrerer at dette ikke er et trivielt problem – de kan akkumulativt ødelegge beregninger i for eksempel luftfart og finansielle applikasjoner.

Utover Math.round(), har du BigDecimal, som gir deg finere kontroll over skalaen og avrundingsmodusen, og DecimalFormat for når du trenger å runde av tall som en del av formatering av tekstutdata. Alternativer til avrunding inkluderer å avrunde ned, avrunde opp og trunkere, som er forskjellige måter å håndtere presisjon på og vanligvis behandles av ulike Math-metoder.

Avhengig av bruksområdet ditt, kan avrundingsstrategien variere. For eksempel er BigDecimal veien å gå for finansielle beregninger, hvor presisjon er kritisk. I kontrast er Math.round() en rask måte for generelle operasjoner hvor du er mindre kresen på avrundingsmodus.

Se også