English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

تعليميات Java الأساسية

Java Flow Control

Java Arrays

Java Object-Oriented (I)

Java Object-Oriented (II)

Java Object-Oriented (III)

معالجة الاستثناءات Java

Java List

Java Queue (Queue)

Java Map Collections

Java Set Collections

Java Input/Output (I/O)

Java Reader/Writer

مواضيع أخرى في Java

استخدام طريقة Java Math toIntExact() ومثال

طرق الرياضيات في Java Math

يسترداد قيمة int من معامل long المحدد باستخدام طريقة Math toIntExact() في Java.

نظام الأنماط toIntExact()

Math.toIntExact(long value)

ملاحظة∶ toIntExact() هي طريقة ثابتة. لذلك، يمكننا استخدام اسم فئة Math لاستدعاء هذه الطريقة.

معامل toIntExact()

  • value - المعامل الذي سيتم تحويله إلى int

قيمة toIntExact()

  • استرداد قيمة int من قيمة long المحددة

مثال 1: Java Math.toIntExact()

class Main {
  public static void main(String[] args) {
    // إنشاء متغير long
    long value1 = 52336L;
    long value2 = -445636L;
    // تغيير long إلى int
    int num1 = Math.toIntExact(value1);
    int num2 = Math.toIntExact(value2);
    // طباعة قيمة int
    System.out.println(num1); // 52336
    System.out.println(num2); // -445636
  }
}

في المثال السابق، استخدمنا طريقة Math.toIntExact() للحصول على قيمة int من متغير long معين.

مثال 2: Math.toIntExact() يسبب استثناءً

إذا كان القيمة العائدة من نوع int ليست في نطاق نوع البيانات int، فإن طريقة toIntExact() ستسبب استثناءً.

class Main {
  public static void main(String[] args) {
    //创建一个long变量
    long value = 32147483648L;
    //将long转换为int
    int num = Math.toIntExact(value);
    System.out.println(num);
  }
}

في المثال السابق، قيمة المتغير long هي 32147483648. عند تحويل المتغير long إلى int، فإن قيمة النتيجة تتجاوز نطاق نوع البيانات int.

لذلك، يسبب طريقة toIntExact() استثنائي الزيادة في النطاق (integer overflow)。

الدروس الموصى بها

طرق الرياضيات في Java Math