CodeGym /בלוג Java /Random-HE /שיטת ה-Java String trim()‎
John Squirrels
רָמָה
San Francisco

שיטת ה-Java String trim()‎

פורסם בקבוצה
גם אם שני המיתרים נראים לך אותו הדבר, ייתכן שהם לא. לדוגמה, ייתכן שיש להם חללים מובילים ונגררים. המחשב "רואה" את זה, אבל אנחנו לא. ל-Java יש שיטת trim() מיוחדת להסרת רווחים נגררים ומובילים ממחרוזת. במאמר זה, אנו הולכים להסביר כיצד להשתמש בשיטת Java string trim() בתוכנית Java ולספק כמה דוגמאות קוד.

חתימת שיטת ה-Java String trim()‎

החתימה של שיטת trim() ב-Java היא כדלקמן:

public String trim()
כפי שאתה יכול לראות, זה לא לוקח פרמטרים ומחזיר ערך מחרוזת. הוא מחזיר את העותק של המחרוזת המקורית, אך עם כל הרווחים המובילים והנגררים הוסרו. הערה חשובה: רווח הוא כל תו עם קוד ascii קטן או שווה ל-'U + 0020'. אם המחרוזת שלנו היא רצף ריק של תווים, או שהתווים הראשונים והאחרונים ברצף התווים המיוצגים על ידי אובייקט מחרוזת זה כוללים קודים שאינם רווחים (כפי שהוגדר למעלה), אזי מוחזרת הפניה לאובייקט מחרוזת זה. ובכן, אם כל התווים במחרוזת שלנו הם רווחים, אז מוחזר אובייקט String המייצג מחרוזת ריקה. אם אין רווחים בתחילת השורה ובסוף השורה, השיטה תחזיר את השורה עצמה ללא שינוי.

דוגמה לשיטת Java String trim()

בוא יהיו שתי מחרוזות עם ובלי כמה רווחים בתחילת הטקסט שלהם ובסוף. הטקסט יהיה זהה עבור שני המחרוזות.

 public class TrimDemo {
   public static void main(String[] args) {
//java string trim() method example 
      
       String noSpacesString = "I am the Walrus";
       String withSpaceString = "    I am the Walrus ";

       //printing the both strings out to make sure they are different
       System.out.println(noSpacesString);
       System.out.println(withSpaceString);
       //let's print out two string comparisons. It's false
       //because they are different
       System.out.println(noSpacesString.equals(withSpaceString));
       //trim
       withSpaceString.trim();
       System.out.println(noSpacesString.equals(withSpaceString));
       System.out.println(noSpacesString);
       System.out.println(withSpaceString);
   }
}
הפלט הוא:
אני הוולרוס אני הוולרוס שקר שקר אני הוולרוס אני הוולרוס
רגע מה?? נראה ששיטת ה-Java string trim() לא עובדת! שתי המחרוזות הראשונות שונות, כפי שהן אמורות להיות (לראשונה אין שוליים, לשנייה יש שלושה רווחים מלפנים ואחד אחרי הטקסט). לאחר מכן השווינו בין שתי השורות והדפסנו את התוצאה. ברור שזה שקר שכן השורות הללו שונות. לאחר מכן, יישמנו את שיטת החיתוך על המיתר עם רווחים לאורך הקצוות והשווינו שוב את המיתרים... ומשום מה שוב חזרנו לאקרנים, למרות שעכשיו הם אמורים להיות זהים! ואז, ליתר ביטחון, החלטנו להדפיס את השורות בעצמן, מה יקרה אם יקרה נס? אבוי... הקווים היו שונים ועדיין נשארו. כבר ניחשתם מה הבעיה? הנקודה היא שמחרוזות בג'אווה הן אובייקטים בלתי ניתנים לשינוי. אז המתודה trim() מחזירה לא את המחרוזת המקורית, אלא חדשה. בכל מקרה, עלינו לבדוק את שיטת trim() כאן, אז בוא נכתוב תוכנית אחרת. כאן אנו הולכים לתת שם עותק של המחרוזת שנוצרה כתוצאה משיטת trim() לעבוד איתה. הבה נבדוק גם את שתי המחרוזות עבור שקילות.

public class TrimDemo2 {
   public static void main(String[] args) {
       String noSpacesString = "I am the Walrus";
       String withSpaceString = "    I am the Walrus ";
       String result = withSpaceString.trim();
       System.out.println(noSpacesString);
       System.out.println(result);
       System.out.println(noSpacesString.equals(result));
   }
}
הנה הפלט:
אני הוולרוס אני הוולרוס נכון
בינגו! עכשיו זה עובד כמו שציפינו. זכור לגבי אי-השינוי במחרוזות , זה חשוב מאוד לכל מפתח ג'אווה.
הערות
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION