logo

כיצד למיין רשימה ב-Java

אנו יכולים להשתמש בשיטות הבאות כדי למיין את הרשימה:

supw
  • שימוש בשיטת stream.sorted()
  • שימוש בשיטת Comparator.reverseOrder()‎
  • שימוש בשיטת Comparator.naturalOrder()
  • שימוש בשיטת Collections.reverseOrder()
  • שימוש בשיטת Collections.sort()

ממשק Java Stream

ממשק Java Stream מספק שתי שיטות למיון הרשימה:

sorted() שיטה

ממשק הזרם מספק שיטה sorted() למיון רשימה. הוא מוגדר בממשק Stream אשר קיים ב חבילת java.util . הוא מחזיר זרם ממוין לפי הסדר הטבעי. אם האלמנטים אינם ברי השוואה, הוא זורק java.lang.ClassCastException. החתימה של השיטה היא:

 Stream sorted() 

פָּרָמֶטֶר

T: זה סוג של אלמנט זרם.

Java Stream.sorted(השוואה להשוואה)

זה גם מחזיר זרם ממוין לפי המשווה שסופק. זה יציב עבור זרם מסודר. החתימה של השיטה היא:

 Stream sorted(Comparator comparator) 

פרמטרים

  • T הוא סוג אלמנט הזרם.
  • המשווה שישמש להשוואת אלמנטים

דוגמא

בדוגמה הבאה, השתמשנו בשיטות הבאות:

תו java ל-int
  • ב-Java 8, stream() הוא API המשמש לעיבוד אוספים של אובייקטים.
  • השיטה collect() משמשת כדי לקבל אלמנטים מזרם ואחסנה אותם באוסף.
  • ה-toList() מחזיר את האספן שאוסף את כל רכיבי הקלט לרשימה, לפי סדר מפגש.

דוגמא

 import java.util.*; import java.util.stream.*; public class SortListExample1 { public static void main(String[] args) { //returns a list view List slist = Arrays.asList('Tanu', 'Kamal', 'Suman', 'Lucky', 'Bunty', 'Amit'); List sortedList = slist.stream().sorted().collect(Collectors.toList()); sortedList.forEach(System.out::println); } } 

תְפוּקָה:

כיצד למיין רשימה ב-Java

שיטת Java Comparator.reverseOrder()‎

ה-reverseOrder() הוא שיטה של ​​ממשק Comparator המוגדרת בחבילת java.util. השיטה מחזירה משווה שכופה את הסדר הטבעי ההפוך. זה זורק NullPointerException בעת השוואת null. חתימת השיטה היא:

 static <t extends comparable> Comparator reverseOrder() </t>

ניתן להשוות גם ממשק השייך לחבילת java.lang.

פרמטרים

T: סוג דומה של אלמנט שיש להשוות.

דוגמא

 import java.util.*; import java.util.stream.Collectors; public class SortListExample2 { public static void main(String[] args) { //returns a list view List slist = Arrays.asList(&apos;78&apos;, &apos;a&apos;, &apos;m&apos;, &apos;b&apos;, &apos;z&apos;, &apos;c&apos;, &apos;12&apos;, &apos;l&apos;, &apos;1&apos;); ListsortedList=slist.stream().sorted(Comparator.reverseOrder()).collect(Collectors.toList()); sortedList.forEach(System.out::println); } } 

תְפוּקָה:

סוג של ב-java
כיצד למיין רשימה ב-Java

Java Comparator.naturalOrder()

השיטה מחזירה משווה שמשווה אובייקטים Comparable בסדר הטבעי. ניתן להשוות בסידרה. כאשר אנו משווים null, זה זורק את NullPointerException. זה מ-Java 8. החתימה של השיטה היא:

 Static <t extends comparable> Comparator naturalOrder() </t>
  • השיטה ממיינת את האלמנטים בסדר טבעי (סדר עולה).
  • זה שם את null בראש אם בכלל.
  • הוא מציב את רכיבי האותיות הגדולות תחילה בסדר טבעי לאחר האותיות הקטנות בסדר הטבעי, אם ברשימה יש גם אותיות קטנות וגם אותיות גדולות.

פרמטרים

T: סוג דומה של אלמנט שיש להשוות.

דוגמא

 import java.util.*; public class SortListExample3 { public static void main(String[] args) { List country = Arrays.asList(&apos;Russia&apos;, &apos;India&apos;, &apos;China&apos;, &apos;Japan&apos;, &apos;&apos;, &apos;Ghana&apos;); List country1 = Arrays.asList(&apos;Russia&apos;,&apos;india&apos;, &apos;China&apos;, &apos;Japan&apos;, &apos;&apos;, &apos;ghana&apos;); System.out.println(country); //prints the same list as we define country.sort(String.CASE_INSENSITIVE_ORDER); //sorts the list in case insensitive order System.out.println(country1); country.sort(Comparator.naturalOrder()); //sorts list in ascending order System.out.println(country); //sorts list in ascending order (null, capital letter and small letter) country1.sort(Comparator.naturalOrder()); System.out.println(country1); } } 

תְפוּקָה:

כיצד למיין רשימה ב-Java

שיטת Java Collections.reverseOrder()‎

זוהי השיטה של ​​מחלקת Java Collections השייכת לחבילת java.lang. הוא מחזיר משווה שכופה הפוך מהסדר הטבעי. החתימה של השיטה היא:

 public static Comparator reverseOrder() 

פרמטרים

מחלקת האובייקטים בהשוואה על ידי המשווה.

דוגמא

 import java.util.Arrays; import java.util.Collections; import java.util.List; public class SortListExample4 { public static void main(String args[]) { List list = Arrays.asList(10,1,-20,40,5,-23,0); Collections.sort(list, Collections.reverseOrder()); System.out.println(list); } } 

תְפוּקָה:

טיול אבל
כיצד למיין רשימה ב-Java

שיטת Java Collections.sort().

למחלקה Collections יש שתי שיטות למיון רשימה:

שיטת sort()

השיטה sort() ממיינת את הרשימה בסדר עולה, לפי הסדר הטבעי של האלמנטים שלה. החתימה של השיטה היא:

 public static <t extends comparable> void sort() (List list) </t>

פרמטרים

ת: זה פרמטר סוג.

רשימה: הרשימה שיש למיין.

בוא נראה דוגמה נוספת לשיטת Collections.sorts() .

דוגמא

כיצד לכבות את מצב מפתחים אנדרואיד
 import java.util.*; public class SortListExample5 { public static void main(String[] args) { List sList = new ArrayList(); sList.add(&apos;m&apos;); sList.add(&apos;k&apos;); sList.add(&apos;a&apos;); sList.add(&apos;p&apos;); sList.add(&apos;d&apos;); Collections.sort(sList); //sorts array list for(String str: sList) System.out.print(&apos; &apos;+str); } } 

תְפוּקָה:

כיצד למיין רשימה ב-Java