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

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

تحكم العملية في Java

مجموعات Java Array

Java توجيهية (I)

Java توجيهية (II)

Java توجيهية (III)

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

قوائم Java List

Java Queue (الصف)

مجموعات Java Map

مجموعات Java Set

Java إدخال/إخراج (I/O)

Java Reader/Writer

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

تحويلات Java

في هذا الدليل، سنستخدم الأمثلة لدراسة Java تحويل النوعوسياقها.

عند دراسةقبل تحويل النوع في Java، تأكد من أنك تفهمأنواع البيانات في Java.

تحويل النوع

عملية تحويل قيمة نوع بيانات واحد (مثل int،float،double) إلى نوع بيانات آخر يُسمى تحويل النوع.

في Java، هناك 13 نوعًا من التحويلات. ولكن، في هذا الدليل، سنركز فقط على النوعين الرئيسيين.

1、تحويل التوقيع التلقائي

2、التحويل النحوي

تحويل نوع تلقائي

فيتحويل نوع تلقائيتحويل نوع تلقائي

، يقوم Java تلقائيًا بتحويل نوع بيانات واحد إلى آخر.

class Main {
  public static void main(String[] args) {
    مثال: تحويل int إلى double
    int num = 10;
    // إنشاء متغير نوع int
    // تحويل إلى نوع دوبل
    double data = num;
    System.out.println("قيمة دوبل: " + data);
  }
}

نتيجة الخرج

قيمة integer: 10
قيمة دوبل: 10.0

في هذا المثال، قمنا بتعيين متغير int المسمى num إلى متغير دوبل المسمى data.

في هذا السياق، يقوم Java أولاً بتحويل بيانات نوع int إلى نوع دوبل. ثم يتم توزيعها على متغير دوبل.

فيتحويل نوع تلقائيفي هذه الحالة، يتم تحويل نوع البيانات الأقل (أقل حجم) إلى نوع بيانات أعلى (أكبر حجم). لذا، لا يوجد فقدان للبيانات. هذا هو السبب في أن هذا النوع من التحويلات يحدث تلقائيًا.

الاحتياطهذا يُعرف أيضًا بتحويل نوع غير صريح.

تحويل نوع إجباري

فيتحويل نوع إجباريفي، نستخدم الباريتا لتحويل يدويًا نوع بيانات واحد إلى آخر.

مثال: تحويل double إلى int

class Main {
  public static void main(String[] args) {
    // إنشاء متغير نوع دوبل
    double num = 10.99;
    System.out.println("قيمة double: " + num);
    // تحويل إلى نوع int
    int data = (int)num;
    System.out.println("قيمة integer: " + data);
  }
}

نتيجة الخرج

قيمة double: 10.99
قيمة integer: 10

في هذا المثال، قمنا بتعيين متغير double المسمى num إلى متغير int المسمى data.

انتبه إلى هذا السطر

int data = (int)num;

في هذا السياق، يشير المفتاح int في الباريتا إلى أن متغير num يتم تحويله إلى نوع int.

فيتحويل نوع إجباريفي هذه الحالة، يتم تحويل نوع البيانات الأعلى (المزيد من الحجم) إلى نوع بيانات أقل (أقل حجم). لذا، هناك فقدان للبيانات. هذا هو السبب في أن هذا النوع من التحويلات لا يحدث تلقائيًا.

الاحتياطهذا يُعرف أيضًا بتحويل نوع صريح.

دعونا نرى بعض الأمثلة الأخرى للتحويلات بين الأنواع في Java.

مثال 1: تحويل نوع int إلى String

class Main {
  public static void main(String[] args) {
    // إنشاء متغير نوع int
    int num = 10;
    System.out.println("قيمة العدد: " + num);
    // تحويل نوع int إلى نص
    String data = String.valueOf(num);
    System.out.println("قيمة السلسلة: " + data);
  }
}

نتيجة الخرج

قيمة العدد: 10
قيمة السلسلة: 10

انتبه إلى هذا السطر في البرنامج السابق

String data = String.valueOf(num);

في هذا السياق، نستخدمفئة Java Stringمетод الـvalueOf() يحوّل متغير نوع int إلى نص.

مثال 2: تحويل النوع من السلسلة (String) إلى عدد (int)

class Main {
  public static void main(String[] args) {
    //إنشاء متغير نوع سلسلة
    String data = "10";
    System.out.println("قيمة السلسلة: " + data);
    //تحويل متغير السلسلة إلى عدد
    int num = Integer.parseInt(data);
    System.out.println("قيمة العدد: " + num);
  }
}

نتيجة الخرج

قيمة السلسلة: 10
قيمة العدد: 10

في المثال السابق، يرجى ملاحظة الخطوات التالية

int num = Integer.parseInt(data);

في هذا المكان، استخدمنا طريقة parseInt() من فئة Java Integer لتحويل متغير النوع السلسلة إلى متغير نوع int.

الاحتياطإذا لم يتمكن من تحويل متغير السلسلة إلى متغير عددي، فإنه سيتم إطلاق استثناء NumberFormatException.