JavaRush /בלוג Java /Random-HE /10 השאלות הנשאלות ביותר על מחרוזות ב-Java
ext4
רָמָה

10 השאלות הנשאלות ביותר על מחרוזות ב-Java

פורסם בקבוצה

10 השאלות הנשאלות ביותר על מחרוזות ב-Java מוזכרות כאן

[תרגום] 10 השאלות הנשאלות ביותר על מחרוזות ב-Java - 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 vs StringBuilder vs StringBuffer

    Stringvs StringBuilder: StringBuildermutable, כלומר נוכל לשנות את תוכנו לאחר יצירת האובייקט.

    StringBuilderלעומת StringBuffer: StringBufferמסונכרן, כלומר הוא פועל כראוי בשימוש ממספר שרשורים בו-זמנית, אך הוא איטי יותר מ- StringBuilder.

  8. איך לחזור על שורה מספר פעמים?

    ב-Python, אנחנו יכולים פשוט להכפיל מחרוזת במספר 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