a. Replace the character at index 2 with the character at the last index.
برضو حل
a. Print the letter after the first character in s. i.e. in alphabetic order.
Hint: H is the first letter in s so you should print I;
في لغة جافا، لايمكننا تغيير قيمة محرف ضمن متغير من نمط String لأنه immutable وقيمته تبقى كما هي من وقت إسناد أول قيمة. فقط نستطيع إضافة له باستخدام +. وكل الدوال تعيد سلسة نصية جديدة أي لا تعدل على S بل تقوم بإنشاء سلسلة جديدة و تسند قيمتها للمتغير S أي القيمة (الكائن القديم) يهمل ويفقد قيمته.
يمكن استخدام String Builder وهو صنف قابل لتعديل القيم فيه.
StringBuilder myName = new StringBuilder("wael"); myName.setCharAt(0, 'x'); // تبديل أول حرف // char last_char = // اجلبي آخر حرف وضعيه مكان // x في السطر السابق // myName.setCharAt(0, last_char); System.out.println(myName); // xael
ولاحظي أن المحرف الأول في السلسلة هو 0 وليس 1 (لديك خطأ في طباعة أول محرف)
الدالة replace تبدل جميع القيم التي تساوي الحرف الأول بالثاني وغير مناسبة هنا.
بالنسبة للطلب B:
الأحرف في لغات البرمجية متتالية في القيم، أي B هي عبارة عن A + 1 ..
حيث يتم التعامل مع الأحرف كأرقام حسب جدول ASCII يمكنك البحث عنه،
فالحرف التالي للحرف الحالي هو ناتج جمع 1
A = 65 => B => 66 => C = 67 a = 97 => b => 98 => c = 99
التعليقات