JavaRush /وبلاگ جاوا /Random-FA /10 سوال پرسیده شده در مورد رشته ها در جاوا
ext4
مرحله

10 سوال پرسیده شده در مورد رشته ها در جاوا

در گروه منتشر شد

10 سوال برتر در مورد رشته ها در جاوا در اینجا ذکر شده است

[ترجمه] 10 سوال پرطرفدار در مورد رشته ها در جاوا - 1
  1. چگونه رشته ها را با هم مقایسه کنیم؟ چه چیزی استفاده شود: " ==" یا equals()؟

    به طور خلاصه، " ==" مراجع را با رشته ها مقایسه می کند، اما equals()مقادیر موجود در آن رشته ها را مقایسه می کند. اگر نمی خواهید بررسی کنید که دو رشته یک شی هستند، باید از equals().

    همچنین ایده خوبی است که مفهوم استخر رشته ای را بدانید .

  2. چرا char[]رشته های ( String) برای محافظت از اطلاعات حساس ترجیح داده می شوند؟

    رشته ها تغییر ناپذیر هستند . این بدان معنی است که هنگامی که یک رشته ایجاد می شود، تا زمانی که زباله جمع کننده اجرا نشود، تغییر نخواهد کرد. در مورد یک آرایه، کاملاً واضح است که می توانیم عناصر آن را تغییر دهیم. به این ترتیب اطلاعات حساس (مانند رمز عبور) به صورت متن واضح در هیچ کجای برنامه ذخیره نخواهد شد.

  3. آیا هنگام استفاده از دستور switch می توانیم رشته ها را به عنوان پارامتر ارسال کنیم ؟

    بله، از نسخه 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");

    همین امر در مورد سایر انواع اولیه در جاوا نیز صدق می کند.

  5. چگونه می توان یک رشته را به خطوط جدا شده از فضا تقسیم کرد؟

    ساده ترین راه استفاده از عبارات منظم است. " \s" به عنوان جایگزینی برای کاراکترهای فضای خالی مانند " "، " \t"، " \r"، " \n" عمل می کند.

    String[] strArray = aString.split("\\s+");
  6. < این روش در واقع چه کاری انجام می دهد substring()؟

    در JDK 6، این روش substring()بخشی از کاراکترهای یک رشته موجود را نشان می‌دهد، اما نمونه جداگانه‌ای از رشته ایجاد نمی‌کند. برای ایجاد یک رشته جدید که به صورت آرایه ای از کاراکترها نمایش داده می شود، می توانید تعدادی رشته خالی اضافه کنید، به عنوان مثال، مانند این:

    str.substring(m, n) + ""

    نتیجه آرایه ای از کاراکترها است که رشته جدید ما است. این رویکرد گاهی اوقات می تواند زمان اجرای کد را کاهش دهد زیرا جمع کننده زباله می تواند رشته های بزرگ استفاده نشده را از بین ببرد و فقط رشته های فرعی را ذخیره کند.

    در Oracle JDK 7، این روش substring()یک آرایه کاراکتر جدید را بدون استفاده از آرایه موجود ایجاد می کند. همچنین می توانید نگاهی به نموداری بیندازید که تفاوت بین متدهای substring() را در JDK 6 و JDK 7 نشان می دهد .

  7. String در مقابل StringBuilder در مقابل StringBuffer

    Stringvs StringBuilder: StringBuildermutable، به این معنی که می توانیم محتوای آن را بعد از ایجاد شی تغییر دهیم.

    StringBuildervs StringBuffer: StringBufferهمزمان، به این معنی که وقتی از چندین رشته به طور همزمان استفاده می شود، به درستی عمل می کند، اما کندتر از StringBuilder.

  8. چگونه یک خط را چندین بار تکرار کنیم؟

    در پایتون به سادگی می توانیم یک رشته را در یک عدد ضرب کنیم nو سپس n بار تکرار شود. در جاوا می توانیم از روشی 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