首页  >  文章  >  Java  >  Java集合排序

Java集合排序

WBOY
WBOY原创
2024-08-30 15:48:36787浏览

在 Java 中,有一个名为 java.lang.Class 的类来对集合进行排序。 util.collection,其中提供了一个函数 sort(),用于对在 java 程序中声明或指定为数组或列表的给定列表或集合进行排序。一般来说,java集合排序被定义为java编程语言中的一个实用程序类,它提供了java.util.Collections类。实用程序。集合类提供名为 sort() ( java.util.collection.sort() ) 的静态方法,用于默认对给定集合进行排序,它将按升序或自然顺序排列未排序的数组或列表,但对给定集合进行排序降序排列 在集合实用类 collection.reverseOrder().

中还有另一个函数

开始您的免费软件开发课程

网络开发、编程语言、软件测试及其他

语法:

import java.util.collections;
Collections.sort( names_of_elements or list or array )

以上语法仅在 java.lang.实用程序。 Collections 类在 java 程序中导入,上述语法用于按升序或自然顺序对给定的集合(例如列表、数组、集合等)进行排序。要以相反顺序或降序对给定集合进行排序,同一类中有不同的语法,如下所示:

Collections.sort( names_of_elements or list or array, Collections.reverseOrder() );

上述语法的参数为:

  • Names_of_elements 或列表或数组: 此参数指示在此参数中指定的集合名称,其中集合可以是任何名称,例如具有名称的元素列表或名称数组、名称集等。
  • Collection.reverseOrder(): 在按降序排序的语法中,我们必须在将第一个参数指定为任何名称列表或数组后,将 Collection.reverseOrder() 函数指定为第二个参数名称或名称集等

Collection.sort() 函数在 Java 中如何工作?

在Java中,集合只不过是包含一组元素,例如一组名称、列表或数组等。因此,为了对此类集合进行排序,java提供了一个sort()函数。实用程序。 Collections类,其中这个排序函数是由java程序中的这个函数导入的,然后我们可以在程序中使用它。首先,我们定义一个名称数组或名称列表,以使用 collection.sort() 函数对元素或名称进行排序。列表或数组名称在函数中指定为需要排序的参数。默认情况下,该函数按升序排序,要按降序排序,我们需要在函数中指定列表或数组的名称后指定 collections.reverseOrder() 作为第二个参数。

现在让我们看看下面的示例,如何在下面的 Java 程序中使用 sort() 函数对数组和名称列表进行排序。

示例#1

代码:

import java.util.*;
public class Collectionsorting
{
public static void main(String[] args)
{
ArrayList<String> coll1 = new ArrayList<String>();
coll1.add(" Delhi ");
coll1.add(" Pune ");
coll1.add(" Assam ");
coll1.add(" Bangalore ");
coll1.add(" Harayana ");
coll1.add(" Bihar ");
List<String> names = Arrays.asList("Python", "Java", "Perl", "Ruby", "Fortan");
System.out.println( "Demonstration of collection sort in Java using Collections.sort() fucntion ");
System.out.println("\n");
System. out.println(" The given collection of list of names of places is as follows: ");
System.out.println(names);
Collections.sort(names);
System.out.println("List of names after the use of" +
" Collection.sort() :\n" + names);
System.out.println("\n");
System. out.println(" The given collection of an array of names of places is as follows: ");
System.out.println(coll1);
Collections.sort(coll1);
System.out.println("Array after the use of" +
" Collection.sort() :\n" + coll1);
}
}

输出:

Java集合排序

在上面的例子中,我们首先可以看到我们已经导入了Java。实用程序。 Collections 类,或者我们也可以像 java.util.Collections 类一样导入。 util* 表示属于该 util 的所有类都可以导入。然后在主类中,我们首先声明了一个数组,然后使用 add() 函数插入了每个元素或名称,并且还直接使用数组声明了一个列表。 list() 和所有名称都用双引号声明并用逗号分隔。然后我们显示使用系统声明的所有名称。 println 然后我们声明了 Collections。排序(名称)和集合。 sort(coll1) 按升序对列表和数组中指定的名称进行排序。上述程序的输出可以在上面的屏幕截图中看到。

现在让我们看另一个使用集合的示例。 sort() 用于升序和降序。

示例#2

代码:

import java.util.*;
public class Collectionsorting
{
public static void main(String[] args)
{
ArrayList<String> coll1 = new ArrayList<String>();
coll1.add(" Delhi ");
coll1.add(" Pune ");
coll1.add(" Bihar ");
coll1.add(" Bangalore ");
coll1.add(" Assam ");
coll1.add(" Gujrat ");
System.out.println(" Demonstration of Collections.sort() for sorting the given collections in descending order: ");
System.out.println("\n");
System.out.println(" The given array of names is as follows: ");
System.out.println(coll1);
System.out.println("\n");
Collections.sort(coll1);
System.out.println(" The given array is sorted in ascending order as follows: ");
System.out.println(coll1);
System.out.println("\n");
Collections.sort(coll1, Collections.reverseOrder());
System.out.println("The given array is sorted in descending order is as follows: " +
" Collection.sort() :\n" + coll1);
}
}

输出:

Java集合排序

在上面的示例中,我们可以看到它与前面的示例类似,我们首先导入了实用程序类,用于使用集合类来提供 sort() 函数。然后我们声明了一个名称数组,在其中添加了每个元素,然后我们使用系统显示了这个名称数组。 println() 那么我们就声明了 Collections。 sort(coll1) 以升序对给定数组“coll1”进行排序,然后以降序显示,我们声明了 Collections.sort(coll1, Collections.reverseOrder()) 以降序显示名称。在该示例中,名称显示升序表示按字母顺序显示名称,降序表示按与升序相反的顺序显示名称。上述示例的输出如上图所示。

结论

在本文中,我们得出结论,集合是在实用程序类中定义的类,导入该类是为了在 Java 程序中使用 Collections.sort() 函数。在本文中,取决于用户是否要按自然顺序或倒序显示详细信息。集合可以是任何字符串、数字集等,以便以任何特定顺序对数组进行排序,但这里只有我们可以按升序或降序排序,这可以使用集合类提供的 sort() 函数轻松完成。

以上是Java集合排序的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn