0Pricing
Java Academy · درس

النوع البدائي char

الأحرف وUnicode

النوع البدائي char درس مجاني في Java Academy على CoddyKit. هذا هو الدرس 1 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Java Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Java Academy 4 دروس في المجموع.

ما هو char؟

‏char نوع بدائي في Java يخزّن محرفًا واحدًا، مثل حرف أو رقم أو رمز.

تكتبون قيمة char بين علامتي اقتباس مفردتين: 'A' أو '7' أو '?'. أما علامتا الاقتباس المزدوجتان فتنشئان String، ولذلك فإن "A" ليست char.

char grade = 'A';
char symbol = '#';

طباعة char

يمكنكم تخزين char في متغير وطباعته مثل أي قيمة أخرى.

يُصرّح البرنامج الكامل هنا عن char ثم يطبعه. لاحظوا علامتي الاقتباس المفردتين حول الحرف.

public class Main {
    public static void main(String[] args) {
        char first = 'J';
        System.out.println(first);
    }
}

char هو في الحقيقة رقم

في الخفاء، لكل char رمز رقمي من جدول Unicode. فالحرف 'A' رمزه 65، والحرف 'a' رمزه 97.

إذا أسندتم char إلى int، تمنحكم Java ذلك الرمز الرقمي.

public class Main {
    public static void main(String[] args) {
        char c = 'A';
        int code = c;
        System.out.println(code);
    }
}

إجراء العمليات الحسابية على char

لأن char رقم، يمكنكم إجراء العمليات الحسابية عليه. تؤدي إضافة 1 إلى 'A' إلى الانتقال إلى الرمز التالي، وهو 'B'.

لرؤيته حرفًا مرة أخرى، حوّلوا النتيجة إلى char.

public class Main {
    public static void main(String[] args) {
        char a = 'A';
        char next = (char) (a + 1);
        System.out.println(next);
    }
}

محارف الأرقام مقابل الأعداد

انتبهوا: المحرف '5' ليس العدد 5. فالمحرف '5' يحمل رمز Unicode بقيمة 53.

لتحويل محرف رقمي إلى قيمته العددية الفعلية، اطرحوا '0' منه. ينجح ذلك لأن رموز الأرقام مرتبة.

public class Main {
    public static void main(String[] args) {
        char d = '5';
        int value = d - '0';
        System.out.println(value);
    }
}

محارف الهروب الخاصة

تُكتب بعض المحارف باستخدام محرف هروب مسبوق بشرطة مائلة عكسية. فـ '\n' يمثل سطرًا جديدًا، و'\t' يمثل جدولة، و'\'' يمثل علامة اقتباس مفردة.

يظل كل محرف هروب char واحدًا، رغم أنه يستخدم رمزين في الشيفرة.

char tab = '\t';
char quote = '\'';
char newline = '\n';

مقارنة المحارف

يمكنكم مقارنة المحارف باستخدام == و< و> لأنها تقارن الأعداد الكامنة وراءها.

بما أن 'a' تساوي 97 و'b' تساوي 98، فإن التعبير 'a' < 'b' يساوي true.

public class Main {
    public static void main(String[] args) {
        char x = 'a';
        char y = 'b';
        System.out.println(x < y);
    }
}

استخدام char في switch

يعمل char جيدًا داخل عبارة switch للاختيار بين الحالات.

يكون كل تصنيف case محرفًا بين علامتي اقتباس مفردتين. وهذا مفيد لاختيارات القوائم أو التقييم.

public class Main {
    public static void main(String[] args) {
        char grade = 'B';
        switch (grade) {
            case 'A': System.out.println("Great"); break;
            case 'B': System.out.println("Good"); break;
            default: System.out.println("Keep going");
        }
    }
}

القيمة الافتراضية لـ char

إذا لم تُمنح قيمة لحقل char، فقيمته الافتراضية هي المحرف الفارغ ذي الرمز 0، ويُكتب '\u0000'.

لا تملك المتغيرات المحلية في الأساليب قيمة افتراضية، لذلك يجب إسناد قيمة إلى char قبل استخدامه، وإلا فلن تُترجم الشيفرة.

char letter;
letter = 'Z';
System.out.println(letter);

محارف Unicode الهاربة

يمكنكم كتابة أي char باستخدام رمز Unicode الخاص به، وذلك بكتابة '\u' متبوعًا بأربعة أرقام ست عشرية.

فمثلًا، '\u0041' هو الحرف 'A'. ويتيح لكم ذلك تضمين محارف يصعب إدخالها مباشرةً.

public class Main {
    public static void main(String[] args) {
        char a = '\u0041';
        System.out.println(a);
    }
}

حدود نطاق char

char قيمة غير موقعة مؤلفة من 16 بت، ولذلك يمكنها تخزين رموز من 0 إلى 65535. ولا يمكن أن تكون سالبة.

وهذا يوفر مساحة كافية للحروف والأرقام والمحارف من لغات عالمية كثيرة المخزنة في Unicode.

public class Main {
    public static void main(String[] args) {
        char max = (char) 65535;
        int code = max;
        System.out.println(code);
    }
}

تحقق سريع

اختبروا فهمكم للنوع البدائي char.

مراجعة

يخزّن char محرفًا واحدًا بين علامتي اقتباس مفردتين، ويستند إلى رقم من Unicode.

يمكنكم إجراء العمليات الحسابية على char ومقارنتها، وتحويل محارف الأرقام إلى أعداد بطرح '0'. ويحوّل التحويل إلى char الرمز إلى محرف مرئي.

الأسئلة الشائعة

هل درس «النوع البدائي char» مجاني؟

نعم — نص درس «النوع البدائي char» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Java Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Java Academy 4 دروس في المجموع.

ماذا ستتعلم في «النوع البدائي char»؟

الأحرف وUnicode تتمرن على Java Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Java Academy؟

لا تُشترط خبرة سابقة. Java Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 4.

كم من الوقت يستغرق درس «النوع البدائي char»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Java Academy هذا؟

نعم. كل درس في Java Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. النوع البدائي char
  2. الأساليب المساعدة للأحرف
  3. التكرار على الأحرف
  4. عدّ الأحرف وتصفيتها
← العودة إلى Java Academy