JavaRush /مدونة جافا /Random-AR /10 أسئلة شائعة حول السلاسل النصية في Java
ext4
مستوى

10 أسئلة شائعة حول السلاسل النصية في Java

نشرت في المجموعة

تم ذكر أهم 10 أسئلة مطروحة حول السلاسل في Java هنا

[ترجمة] أكثر 10 أسئلة شيوعًا حول السلاسل في Java - 1
  1. كيفية مقارنة السلاسل؟ ما الذي يجب استخدامه: " ==" أو equals()؟

    باختصار، " ==" يقارن المراجع بالسلاسل، ولكنه equals()يقارن القيم الموجودة في تلك السلاسل. إذا كنت لا تريد التحقق من أن السلسلتين هما نفس الكائن، فيجب عليك استخدام equals().

    سيكون من الجيد أيضًا معرفة مفهوم تجمع السلسلة .

  2. لماذا تُفضل char[]السلاسل ( String) لحماية المعلومات الحساسة؟

    السلاسل غير قابلة للتغيير . هذا يعني أنه بمجرد إنشاء سلسلة، لن يتم تعديلها حتى يتم تشغيل أداة تجميع البيانات المهملة. في حالة المصفوفة، فمن الواضح تمامًا أنه يمكننا تغيير عناصرها. بهذه الطريقة، لن يتم تخزين المعلومات الحساسة (مثل كلمة المرور) بنص واضح في أي مكان في البرنامج.

  3. هل يمكننا تمرير السلاسل كمعلمة عند استخدام عبارة التبديل ؟

    نعم، بدءًا من الإصدار 7 من JDK. في السابق، في الإصدار 6، لم يكن هذا ممكنا.

    // java 7 only!
    switch (str.toLowerCase()) {
          case "a":
               value = 1;
               break;
          case "b":
               value = 2;
               break;
    }
  4. كيفية تحويل سلسلة إلى قيمة عددية؟

    int n = Integer.parseInt("10");

    الأمر نفسه ينطبق على الأنواع البدائية الأخرى في Java.

  5. كيفية تقسيم سلسلة إلى خطوط محددة بمسافة؟

    أسهل طريقة هي استخدام التعبيرات العادية. تعمل " \s" كبديل لأحرف المسافات البيضاء مثل " "،" \t"،" \r"،" \n".

    String[] strArray = aString.split("\\s+");
  6. < ما الذي تفعله الطريقة في الواقع substring()؟

    في JDK 6، أظهرت الطريقة substring()جزءًا من الأحرف من سلسلة موجودة، ولكنها لم تقم بإنشاء مثيل منفصل للسلسلة. لإنشاء سلسلة جديدة ممثلة كمصفوفة من الأحرف، يمكنك إضافة بعض السلاسل الفارغة، على سبيل المثال، مثل هذا:

    str.substring(m, n) + ""

    والنتيجة هي مجموعة من الأحرف، وهي السلسلة الجديدة لدينا. يمكن أن يؤدي هذا الأسلوب في بعض الأحيان إلى تقليل وقت تنفيذ التعليمات البرمجية لأن أداة تجميع البيانات المهملة يمكنها تدمير السلاسل الكبيرة غير المستخدمة وتخزين السلاسل الفرعية فقط.

    في Oracle JDK 7، تقوم الطريقة substring()بإنشاء مصفوفة أحرف جديدة دون استخدام مصفوفة موجودة. يمكنك أيضًا إلقاء نظرة على الرسم البياني الذي يمثل الفرق بين أساليب السلسلة الفرعية () في JDK 6 وJDK 7 .

  7. سلسلة مقابل StringBuilder مقابل StringBuffer

    Stringvs StringBuilder: StringBuilderقابل للتغيير، مما يعني أنه يمكننا تغيير محتوياته بعد إنشاء الكائن.

    StringBuildervs StringBuffer: StringBufferمتزامن، مما يعني أنه يعمل بشكل صحيح عند استخدامه من عدة سلاسل رسائل في نفس الوقت، ولكنه أبطأ من StringBuilder.

  8. كيفية تكرار السطر عدة مرات؟

    في بايثون، يمكننا ببساطة ضرب سلسلة برقم nثم تكرر العدد n مرات. في Java، يمكننا استخدام طريقة repeat()من StringUtilsفئة مكتبة Apache Commons Lang.

    String str = "abcd";
    String repeated = StringUtils.repeat(str,3);
    //abcdabcdabcd
  9. كيفية تحويل سلسلة إلى تاريخ؟

    String str = "Sep 17, 2013";
    Date date = new SimpleDateFormat("MMMM d, yy", Locale.ENGLISH).parse(str);
    System.out.println(date);
    //Tue Sep 17 00:00:00 EDT 2013
  10. كيف نحسب عدد مرات ظهور حرف معين في سلسلة؟

    استخدم فصلًا دراسيًا StringUtilsمن مكتبة Apache Commons Lang.

    int n = StringUtils.countMatches("11112222", "1");
    System.out.println(n);
تعليقات
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION