Java实现中文字符串的排序功能
package test; /**
*
* @Title 书的信息类
* @author LR
* @version 1.0
* @since 2016-04-21
*/ public class Book { private String book_id; private String book_name; private String publishing_house; public Book(String book_id, String book_name, String publishing_house) {
super();
this.book_id = book_id;
this.book_name = book_name;
this.publishing_house = publishing_house;
} public String getBook_id() {
return book_id;
} public void setBook_id(String book_id) {
this.book_id = book_id;
} public String getBook_name() {
return book_name;
} public void setBook_name(String book_name) {
this.book_name = book_name;
} public String getPublishing_house() {
return publishing_house;
} public void setPublishing_house(String publishing_house) {
this.publishing_house = publishing_house;
} @Override
public String toString() {
// TODO Auto-generated method stub
return "书号"+book_id+"\n书名"+book_name+"\n出版社"+publishing_house;
}
}
package test; import java.text.Collator; /**
*
* @Title 中文字符串排序功能
* @author LR
* @version 1.0
* @since 2016-04-21
*/ import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator; public class CollectionChineseSort implements Comparator<Book>{ Collator collator= Collator.getInstance(java.util.Locale.CHINA); public static void main(String[] args) { ArrayList<Book> list=new ArrayList<Book>(); list.add(new Book("1","英语","英语出版社"));
list.add(new Book("2","日语","日语出版社"));
list.add(new Book("3","德语","德语出版社"));
list.add(new Book("4","法语","法语出版社"));
list.add(new Book("5","俄语","俄语出版社")); Collections.sort(list,new CollectionChineseSort()); for (Book book:list){
System.out.println(book);
}
} @Override
public int compare(Book book1, Book book2) {
// TODO Auto-generated method stub int compare_value=collator.compare(book1.getBook_name(),book2.getBook_name()); if(compare_value>0){
return 1;
}
if(compare_value<0){
return -1;
} return 0;
}
}
Java实现中文字符串的排序功能的更多相关文章
- 利用Java程序将字符串进行排序与拼接
1.初始生成字符串的代码程序: package com.map.test; import java.util.ArrayList; import java.util.Collections; impo ...
- JAVA 写中文字符串到指定文件 中文乱码 问题解决
之前试过下面代码里面的注释掉的 方法,都不行,后来想到了不如指定编码格式试试,果真可以了. String as= “中文字符”; //byte[] b = as.getBytes(); try{ Fi ...
- java中字符串的排序(1)
按照前段时间在快速.冒泡等排序的评论中提到是否可以进行字符串的排序,由于最近有考试,时间比较紧,所以今天才实现此功能.此功能是针对一串字符川进行的实现,运行后的结果如下所示: 具体的程序相对较为简单, ...
- Java之List排序功能举例
package test_demo; import java.util.ArrayList; import java.util.Collections; import java.util.List; ...
- java输入一个字符串,打印出该字符串中字符的所有排列,随机打乱排序
import java.util.ArrayList;import java.util.Collections;import java.util.List; public class Test7{ ...
- Java TreeSet集合排序 && 定义一个类实现Comparator接口,覆盖compare方法 && 按照字符串长度排序
package TreeSetTest; import java.util.Iterator; import java.util.TreeSet; import javax.management.Ru ...
- Java判断一个字符串是否有中文
Java判断一个字符串是否有中文一般情况是利用Unicode编码(CJK统一汉字的编码区间:0x4e00–0x9fbb)的正则来做判断,但是其实这个区间来判断中文不是非常精确,因为有些中文的标点符号比 ...
- THINKPHP_(1)_修改TP源码,支持对中文字符串按拼音进行排序。
问题:TP从服务器数据中取出的collection数据,当进一步在网页中进行分页显示时,需要调用order函数,实现类似如下图的排序. 当点击页面中的相关内容时,实现对服务器数据进行重排,就要调用TP ...
- Java中实现对集合中对象按中文首字母排序
有一个person对象如下: public class Person { private String id;private String nam; } 一个list集合如下: List<Emp ...
随机推荐
- How to install cacti With Nginx
转载于:https://github.com/blackyboy/Ubuntu-Linux-Stuffs/blob/master/How-to-install-Cacti-Monitoring-Ser ...
- kettle创建资源库
手动修改一下这个表 R_VERSION INSERT INTO R_VERSION(ID_VERSION, MAJOR_VERSION, MINOR_VERSION, UPGRADE_DATE, IS ...
- Python Mongo操作
# -*- coding: utf-8 -*- ''' Python Mongo操作Demo Done: ''' from pymongo import MongoClient conn = None ...
- ViewPager的监听事件失效
主要是因为在我项目使用了PageIndicator,所以这个时候监听事件要写在PageIndicator上. mIndicator.setOnPageChangeListener(new OnPage ...
- Android中的PopupWindow详解
Android的对话框有两种:PopupWindow和AlertDialog.它们的不同点在于: AlertDialog的位置固定,而PopupWindow的位置可以随意 AlertDialog是 ...
- 极限编程,最强N皇后JAVA解题代码,4秒出15皇后,33秒出16皇后
私人博客原文链接来自:http://www.hexcode.cn/article/show/eight-queen 8皇后以及N皇后算法探究,回溯算法的JAVA实现,非递归,循环控制及其优化 8皇后以 ...
- [ionic开源项目教程] - 第1讲 前言,技术储备,环境搭建,常用命令
前言 这是一个系列文章,将持续更新到项目完结,从环境搭建开始讲解,包括实战开发中遇到的各种问题的解决方案,都将毫无保留的分享给大家. 技术储备 开始本项目之前,请确保自己对以下技术点都有所了解. ht ...
- Struts2的crud
struts2的crud引出的问题: 1.当Action里面有其他类的实例引用属性时,当要用请求参数为该对象的属性赋值时,如何将其压入栈顶. 2.当有的操作(list)不需要创建该属性的实例对象时,或 ...
- mysql now() sysdate() curdate()区别
//mysql中now,curdate,curtime,sysdate区别 1.now 返回的时间,格式如下:2013-01-17 10:57:13 mysql> select now(),sl ...
- Android下Fragment的动画切换效果
效果图如下: 源码链接 : 请戳这里