`
wangyan2009
  • 浏览: 25407 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

创建对象内置排序器

    博客分类:
  • java
 
阅读更多
class T {
public static final Comparator namecompartor = new Comparator() {
private static final long serialVersionUID = -1437640932087241702L;
public int compare(Object o1, Object o2) {
RuleBasedCollator collator = (RuleBasedCollator) Collator.getInstance(java.util.Locale.CHINA);
T p1 = (T) o1;
T p2 = (T) o2;
CollationKey c1 = collator.getCollationKey(p1.getName());
CollationKey c2 = collator.getCollationKey(p2.getName());
return collator.compare(c1.getSourceString(),c2.getSourceString());
}
};
private String name;
private int id;
T(String name, int id) {
this.name = name;
this.id = id;
}


public String getName() {
return name;
}


public void setName(String name) {
this.name = name;
}


public int getId() {
return id;
}


public void setId(int id) {
this.id = id;
}


@Override
public String toString() {
return this.name+this.id;
}


}
分享到:
评论

相关推荐

    Java 对象排序详解.rar_java 对象排序_对象_排序

    最后,你可以根据排序后的List创建一个新的LinkedHashSet,这将保持排序顺序。 ```java HashSet<MyObject> set = new HashSet(); List<MyObject> sortedList = new ArrayList(set); sortedList.sort(...); // 使用...

    Java面向对象思想的排序方法

    在实际编程中,我们还可以考虑其他优化措施,比如引入比较器(Comparator)以实现自定义排序规则,或者利用Java的内置排序函数`Arrays.sort()`,它底层使用的是高效的TimSort算法,但在某些特定场景下可能需要自定义...

    java对象排序

    `java sort`标签表明我们关注的是使用Java内置的排序机制。本文将深入探讨Java中的对象排序,包括基本概念、API使用以及自定义排序规则。 ### 1. Java对象排序基础 在Java中,我们可以对两种类型的元素进行排序:...

    swift-iOS开发·必会的算法操作字符串数组排序模型对象数组排序

    我们可以创建一个`Person`对象的数组,并根据`name`属性进行排序: 1. **基于属性排序**: ```swift var personArray: [Person] = [Person(name: "Alice"), Person(name: "Bob"), Person(name: "Charlie")] ...

    List中保存对象,按对象中某一属性排序【含程序源码】

    如果列表中的对象实现了`Comparable`接口,那么可以省略`Comparator`,因为`Comparable`已经内置了默认的排序规则。 博客中提到的程序源码可能包含了以下内容: ```java import java.util.*; class Student ...

    PB数据窗口的排序

    1. **内置排序**:这是最基础的排序方式,可以在数据窗口对象的设计阶段设置。通过在数据窗口属性中选择“列”选项卡,然后选择需要排序的字段,设置其排序方式(升序或降序)。内置排序通常用于固定的、预定义的...

    对象排序算法

    1. **内置排序方法**: - `Arrays.sort()`: 这是Java标准库中用于排序数组的通用方法。它能处理基本类型数组(如int、double等)以及对象数组。对于对象数组,`Arrays.sort()`会调用对象的`Comparable`接口或自定义...

    C#资料 包括 ado.net ,asp.net2.0内置对象等很重要的。也很适合面试

    本压缩包中的资料涵盖了C#的一些关键知识点,包括ADO.NET和ASP.NET 2.0内置对象,这些都是C#程序员必须掌握的核心技术。 首先,ADO.NET是.NET框架的一部分,用于与数据库进行交互。它提供了数据访问接口,使得开发...

    java List排序demo

    当我们需要对`List`中的元素进行排序时,可以利用Java提供的内置排序机制。本篇将详细介绍如何根据指定字段对`List`中的对象进行排序,以`Student`类为例,假设每个`Student`都有一个`grad`属性表示成绩。 首先,...

    JavaScript 核心参考教程 内置对象

    - `constructor`:指向创建对象的函数。 - `hasOwnProperty()`:判断对象是否直接拥有某个属性,而非从原型链中继承。 - `isPrototypeOf()`:检查一个对象是否是另一个对象的原型。 - `propertyIsEnumerable()`...

    冒泡排序-时间排序

    与冒泡排序相结合,可能是在处理包含日期的数组排序时,比如用户创建事件的时间戳等,可能需要用到冒泡排序来按时间顺序排列这些`NSDate`对象。排序时,可以将`NSDate`对象转换为时间戳,然后基于这些时间戳进行冒泡...

    JTable表头排序的两种方法

    2. **设置排序规则**:创建`RowSorter.SortKey`对象,表示要排序的列和排序顺序。 3. **设置RowSorter到JTable**:将`RowSorter`设置到`JTable`上,`JTable`会自动处理排序逻辑。 ```java JTable table = new ...

    排序问题C++MFC

    例如,你可以创建一个比较函数对象,重载`operator()`,并传给`Sort`方法。例如: ```cpp class MyCompare { public: bool operator()(const int& lhs, const int& rhs) const { return lhs > rhs; // 降序排列,...

    pb数据窗口的通用排序

    - **内置排序**:PB数据窗口提供了内置的排序功能,可以在设计时通过数据窗口对象的属性设置,选择要排序的字段和排序方式(升序或降序)。这种方式简单直观,适用于固定排序需求。 - **动态排序**:在运行时,...

    java 对象数组排序

    4. 对于更复杂的排序规则,比如按照对象的某个特定属性,你可以自定义一个实现了`Comparator`接口的类,并在`Arrays.sort()`中传入这个比较器实例,如`Arrays.sort(userListTemp, new PinyinComparator())`。...

    javascript表格排序案例(面向对象)案例资料

    在本案例中,我们可以创建一个`Table`对象,用于存储表格数据并提供排序方法。 1. **对象属性**:`Table`对象可能包含`data`属性,存储表格的数据数组,每个元素代表一行数据,可以是包含列名和对应值的对象。例如...

    the-array-object-Java-sort.rar_java 对象排序

    现在,我们要按照学生的总分对数组进行降序排序,可以使用Java内置的`Arrays.sort()`方法,但这个方法默认只适用于基本类型。对于对象数组,我们需要提供一个`Comparator`接口的实现,以便定义比较规则: ```java /...

    oc中数组排序

    四、内置排序函数 除了使用比较器块,OC还提供了基于C语言的`qsort`函数,适用于对基本数据类型的数组进行排序。但请注意,这种方法不适用于Objective-C的对象数组,因为它们涉及到指针的比较,而不是对象的实际...

    C#实现对二维数组排序的方法

    方法内部首先检查`sortCol`是否在数组的列范围内,然后创建一个新的`DataTable`对象,并根据二维数组的第二维度(列)为每一列添加`DataColumn`。接着,将二维数组的数据逐行加载到`DataTable`中。完成数据加载后,...

    c#经典排序

    1. **内置排序**:C#的`System.Linq`命名空间提供了便捷的排序方法,如`OrderBy()`和`OrderByDescending()`。这些方法适用于`IEnumerable<T>`类型的集合,可以根据提供的比较器或者元素的自然顺序对集合进行排序。...

Global site tag (gtag.js) - Google Analytics