国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

java線性表排序示例分享

2019-11-26 15:38:13
字體:
來源:轉載
供稿:網友

大家可以先看一下這個靜態方法public static <T> void sort(List<T> list, Comparator<? super T> c)

1.先定義一個模型:

復制代碼 代碼如下:

package model;

/**
 * User.java
 *
 * @author 梁WP 2014年3月3日
 */
public class User
{
    private String userName;
    private int userAge;

    public User()
    {
    }

    public User(String userName, int userAge)
    {
        this.userName = userName;
        this.userAge = userAge;
    }

    public String getUserName()
    {
        return userName;
    }

    public void setUserName(String userName)
    {
        this.userName = userName;
    }

    public int getUserAge()
    {
        return userAge;
    }

    public void setUserAge(int userAge)
    {
        this.userAge = userAge;
    }
}

2.然后定義一個比較器,實現java.util.Comparator接口,在compare()方法編寫比較規則:

復制代碼 代碼如下:

package util;

import java.util.Comparator;

import model.User;

/**
 * ComparatorUser.java
 *
 * @author 梁WP 2014年3月3日
 */
public class ComparatorUser implements Comparator<User>
{
    @Override
    public int compare(User arg0, User arg1)
    {
        // 先比較名字
        int flag = arg0.getUserName().compareTo(arg1.getUserName());

        // 如果名字一樣,就比較年齡
        if (flag == 0)
        {
            return arg0.getUserAge() - arg1.getUserAge();
        }
        return flag;
    }
}

3.排序的時候用java.util.Collections里面的sort(List list, Comparator c)方法:

復制代碼 代碼如下:

package test;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

import util.ComparatorUser;
import model.User;

/**
 * TestApp.java
 *
 * @author 梁煒平 2014年3月3日
 */
public class TestApp
{
    public static void main(String[] arg0)
    {
        List<User> userList = new ArrayList<User>();

        // 插入數據
        userList.add(new User("A", 15));
        userList.add(new User("B", 14));
        userList.add(new User("A", 14));

        // 排序
        Collections.sort(userList, new ComparatorUser());

        // 打印結果
        for (User u : userList)
        {
            System.out.println(u.getUserName() + " " + u.getUserAge());
        }
    }
}

4.運行結果:

復制代碼 代碼如下:

A 14
A 15
B 14

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 富锦市| 西城区| 乌兰察布市| 泗洪县| 连州市| 那坡县| 原阳县| 泰顺县| 罗江县| 上杭县| 凌海市| 文登市| 松江区| 阿瓦提县| 郴州市| 南和县| 旺苍县| 舟山市| 郎溪县| 泸州市| 天祝| 克东县| 增城市| 中卫市| 锡林浩特市| 徐州市| 江达县| 恩平市| 隆林| 南丰县| 班戈县| SHOW| 西平县| 和龙市| 高州市| 宁河县| 阜宁县| 鹤岗市| 古丈县| 阿拉善右旗| 科技|