`

字符串、list 排序 comparable

阅读更多
package test;
import java.util.*;

public class SortTest {

private List<Student> lista = new ArrayList<Student>();

/**
* @param args
* @CreateDate:2012-10-14
* @author
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
simpleSort();

SortTest s = new SortTest();
s.listSort();
}

/**
* 字符串排序,基本用不上
* @CreateDate:2012-10-14
* @author
*/
public static void simpleSort(){
String[] strs = {"abb","dfs","adc"};

Arrays.sort(strs);
System.out.println(strs[0]+","+strs[1]+","+strs[2]);
}

/**
* list排序
* @CreateDate:2012-10-14
* @author
*/
public void listSort(){
this.lista.add(new Student("abb"));
this.lista.add(new Student("dfs"));
this.lista.add(new Student("adc"));

Collections.sort(this.lista);
for(Student s:lista){
System.out.println(s.name);
}

//降序
Comparator comp = Collections.reverseOrder();
Collections.sort(this.lista,comp);
for(Student s:lista){
System.out.println("降序:"+s.name);
}
}

}

class Student implements Comparable<Student>{

public String name;

public Student(String name){
this.name = name;
}

@Override
public int compareTo(Student o) {
// TODO Auto-generated method stub

return this.name.compareTo(((Student)o).name);
}


}

结果:
abb,adc,dfs
abb
adc
dfs
降序:dfs
降序:adc
降序:abb
分享到:
评论

相关推荐

    CustomComparator:此 jar 可帮助您根据对象内的字符串值对对象进行排序

    这个 jar 可以帮助您根据对象内的字符串值(字符串值是字母数字)对对象进行排序 Comparable 和 String.CASE_INSENSITIVE_ORDER 的问题 字母数字字符串未正确排序 鉴于: 1级 2年级 13年级 结果集是: 1级 13年级 ...

    Java中Comparator接口与Comparable接口的区别

    1. Comparator 和 Comparable 相同的地方  他们都是java的一个接口, 并且是用来对自定义的class比较大小的, ... 这时肯定有人要问, 那为什么可以排序一个字符串list呢:  如 StringList{hello1 , h

    java初学者必看

    5.1.3 StringBuffer创建字符串 5.2 连接字符串 5.2.1 与字符串的连接 5.2.2 与其他数据类型的连接 5.3 String字符串操作 5.3.1 基本操作 5.3.2 比较 5.3.3 转化 5.3.4 查找 5.3.5 截取拆分 5.3.6 替换或...

    java常用工具类的使用

    在程序设计时,界面上用户输入的基本上都是字符串,如果字符串输入一个出生年月,如何把该字符串转换成Date类型呢?可以使用SimpleDateFormat的parse()方法。 代码演示:SimpleDateFormat解析日期 import java.text...

    Java服务器端开发面试.doc

    Java服务器端开发面试题 Java服务器端开发面试题篇1 Hashcode()和equals(), 明白背后的原理,包括hashcode()的用法,各自的区别,如何,何时覆盖,为何覆盖 区别new String()和 申明的字符串的区别,String不变量,堆...

    JAVA基础课程讲义

    字符串相关类(String、 StringBuffer 、 StringBuilder) 120 String类的常用方法(已讲过,不再讲!) 120 StringBuffer和StringBuilder 121 String和StringBuffer和StringBuilder使用要点 123 时间处理相关类 124...

    Guava 16.0 API (CHM格式)

    Strings: 一个非常非常有用的字符串工具类: 提供 splitting,joining, padding 等操作。  七. Primitives: 扩展 JDK 中未提供的对原生类型(如int、char等)的操作, 包括某些类型的无符号的变量。  八. ...

    AIC的Java课程1-6章

     能够使用String,StringBuffer,StringBuilder类创建字符串对象和使用其方法,分辨不同类之间的区别。  能够使用Date, Calendar, Locale, DateFormat,NumberFormat类创建、改变和显示日期、数字和货币...

    Java学习笔记-个人整理的

    {1.4.4}转义字符}{25}{subsection.1.4.4} {1.4.5}Boolean 布尔值}{25}{subsection.1.4.5} {1.5}基本类型变量的初始值}{26}{section.1.5} {1.6}数据类型转换}{26}{section.1.6} {1.7}方法}{26}{section.1.7} {...

    达内 coreJava 习题答案

    1,编写程序,判断给定的某个年份是否是闰年。 闰年的判断规则如下: (1)若某个年份能被4整除但不能被100整除,则是闰年。 (2)若某个年份能被400整除,则也是闰年。 import java.util.Scanner;...

Global site tag (gtag.js) - Google Analytics