Java实现中文字符串的排序功能

时间:2023-01-14 20:40:07
 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实现中文字符串的排序功能的更多相关文章

  1. 利用Java程序将字符串进行排序与拼接

    1.初始生成字符串的代码程序: package com.map.test; import java.util.ArrayList; import java.util.Collections; impo ...

  2. JAVA 写中文字符串到指定文件 中文乱码 问题解决

    之前试过下面代码里面的注释掉的 方法,都不行,后来想到了不如指定编码格式试试,果真可以了. String as= “中文字符”; //byte[] b = as.getBytes(); try{ Fi ...

  3. java中字符串的排序(1)

    按照前段时间在快速.冒泡等排序的评论中提到是否可以进行字符串的排序,由于最近有考试,时间比较紧,所以今天才实现此功能.此功能是针对一串字符川进行的实现,运行后的结果如下所示: 具体的程序相对较为简单, ...

  4. Java之List排序功能举例

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

  5. java输入一个字符串,打印出该字符串中字符的所有排列&comma;随机打乱排序

    import java.util.ArrayList;import java.util.Collections;import java.util.List; public class Test7{   ...

  6. Java TreeSet集合排序 &amp&semi;&amp&semi; 定义一个类实现Comparator接口,覆盖compare方法 &amp&semi;&amp&semi; 按照字符串长度排序

    package TreeSetTest; import java.util.Iterator; import java.util.TreeSet; import javax.management.Ru ...

  7. Java判断一个字符串是否有中文

    Java判断一个字符串是否有中文一般情况是利用Unicode编码(CJK统一汉字的编码区间:0x4e00–0x9fbb)的正则来做判断,但是其实这个区间来判断中文不是非常精确,因为有些中文的标点符号比 ...

  8. THINKPHP&lowbar;&lpar;1&rpar;&lowbar;修改TP源码,支持对中文字符串按拼音进行排序。

    问题:TP从服务器数据中取出的collection数据,当进一步在网页中进行分页显示时,需要调用order函数,实现类似如下图的排序. 当点击页面中的相关内容时,实现对服务器数据进行重排,就要调用TP ...

  9. Java中实现对集合中对象按中文首字母排序

    有一个person对象如下: public class Person { private String id;private String nam; } 一个list集合如下: List<Emp ...

随机推荐

  1. Maven在Eclipse中的实用小技巧

    前言     我们在开发的工程中很多都是Maven项目,这样更加便于我们jar包的管理.而我们一般使用的IDE都是Eclipse,由于我们在日常的开发过程中会经常要用到一些Maven的操作,所以我今天 ...

  2. &lbrack;转&rsqb; Finding the Best Programmer&&num;39&semi;s Font

    原文 Finding the Best Programmer's Font

  3. Discuz&excl; X upgrade&sol;converter GETSHELL Vulnerability Via &sol;convert&sol;include&sol;global&period;func&period;php Inject Special Symbol Into &sol;convert&sol;data&sol;config&period;inc&period;php

    目录 . 漏洞描述 . 漏洞触发条件 . 漏洞影响范围 . 漏洞代码分析 . 防御方法 . 攻防思考 1. 漏洞描述 对于PHP应用来说,处于用户的输入并正确划定"数据-代码"边界 ...

  4. C&plus;&plus; 顺序容器

    <C++ Primer 4th>读书笔记 顺序容器内的元素按其位置存储和访问.容器类共享公共的接口,每种容器类型提供一组不同的时间和功能折衷方案.通常不需要修改代码,只需改变类型声明,用一 ...

  5. Makefile学习(1) arm-linux-ld arm-linux-objcopy arm-linux-objdump

    记录自己所学的点点滴滴O(∩_∩)O哈哈~ makefile: link.bin: start.o main.o arm-linux-ld -Tlink.lds -o link.elf $^ arm- ...

  6. Dubbo入门基础与实例讲解(转)

    林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka Dubbo是阿里巴巴SOA服务化治理方案的核心框架,每天为2,000+个服务提供3,000,0 ...

  7. HttpActionDescriptor,ASP&period;NET Web API又一个重要的描述对象

    HttpActionDescriptor,ASP.NET Web API又一个重要的描述对象 通过前面对“HttpController的激活”的介绍我们已经知道了ASP.NET Web API通过Ht ...

  8. HDU 5572 An Easy Physics Problem &lpar;计算几何&plus;对称点模板&rpar;

    HDU 5572 An Easy Physics Problem (计算几何) 题目链接http://acm.hdu.edu.cn/showproblem.php?pid=5572 Descripti ...

  9. 一堆C&plus;&plus;人找不出内存泄露

    一堆C++人找不出内存泄露 内存泄露就像痔疮对于男人,对于C/C++程序员来说,是顽疾.尤其一堆C++人聚集在一起,准备把程序深处的虫子抓出来的时候,那景象是热火朝天,不亦乐乎. 突然,小白甲发布了一 ...

  10. Meterpreter命令详解

      0x01初识Meterpreter 1.1.什么是Meterpreter Meterpreter是Metasploit框架中的一个扩展模块,作为溢出成功以后的攻击载荷使用,攻击载荷在溢出攻击成功以 ...