תוכן עניינים:

האם StringBuilder יכול להיות ריק?
האם StringBuilder יכול להיות ריק?

וִידֵאוֹ: האם StringBuilder יכול להיות ריק?

וִידֵאוֹ: האם StringBuilder יכול להיות ריק?
וִידֵאוֹ: Reflection - חלק 1 2024, נוֹבֶמבֶּר
Anonim

ריק פירושו שאין תווים ב- StringBuilder . ריק אומר שאין StringBuilder חפץ בכלל. משתנה הוא רק ריק אם יש לו סוג הפניה (לדוגמה String, StringBuilder , הגדר, בתור אצבע: כל הסוגים באותיות רישיות) והוא עדיין לא אתחול או הוגדר במפורש ל ריק.

באופן דומה, כיצד אוכל לדעת אם StringBuilder שלי ריק?

שיטת האורך של ה StringBuilder או מחלקה StringBuffer מחזירה את אורך רצף התווים שיש לה כרגע. כפי שאתה יכול לראות בדוגמה, to תבדוק אם ה StringBuilder ריק , קבל את אורך ה StringBuilder לְהִתְנַגֵד. אם האורך הוא 0, זהו ריק , אחרת לא.

באופן דומה, מדוע StringBuilder יעיל יותר מ-StringBuffer? כתוצאה, StringBuilder מהיר יותר מאשר StringBuffer . StringBuffer ניתן לשינוי. זה יכול להשתנות מבחינת אורך ותוכן. StringBuffers הם בטוחים לשרשור, כלומר יש להם שיטות מסונכרנות לשלוט בגישה כך שרק שרשור אחד יכול לגשת ל- a StringBuffer הקוד המסונכרן של האובייקט בכל פעם.

בהתאם לכך, כיצד מאפסים StringBuilder?

1) נקה את StringBuilder על ידי הקצאת אובייקט חדש

  1. מחלקה ציבורית JavaStringBufferClearEmptyExample {
  2. public static void main(String args) {
  3. StringBuilder sbStr = null;
  4. for(int i = 1; i <= 5; i++){
  5. //נקה את התוכן מהאיטרציה הקודמת.
  6. sbStr = new StringBuilder();
  7. sbStr. append(i);
  8. מערכת. הַחוּצָה. print(sbStr);

כיצד פועל StringBuilder באופן פנימי ב-Java?

StringBuilder אובייקטים הם כמו אובייקטי מחרוזת, אלא שניתן לשנות אותם. כְּלַפֵּי פְּנִים , אובייקטים אלו מטופלים כמו מערכים באורך משתנה המכילים רצף של תווים. לדוגמה, אם אתה צריך לשרשר מספר גדול של מחרוזות, הוספה ל-a StringBuilder האובייקט יעיל יותר.

מוּמלָץ: