java汉字笔画排序

2021-06-04 00:00:00 排序 汉字 笔画

排序范围:unicode编码4E00-9FA5

以下是第二版内容

第二版下载地址:
例子:https://download.csdn.net/download/u013271384/20022671
源码:https://download.csdn.net/download/u013271384/20022646

以下是第一版内容

这是我自己写的一个java排序的库,排序主要针对String及类中的String字段进行排序,需要为类中要排序的字段生成get、set方法。
文件目录如下:

《java汉字笔画排序》

1.ObjectStrokeComparator:对指定类进行排序
对List排序:

List<Stroke> strokes = new ArrayList<Stroke>();
		Stroke stroke1 = new Stroke();
		stroke1.setName("张三无");
		strokes.add(stroke1);
		stroke1 = new Stroke();
		stroke1.setName("赵明红匠");
		strokes.add(stroke1);
		stroke1 = new Stroke();
		stroke1.setName("李位");
		strokes.add(stroke1);
		stroke1 = new Stroke();
		stroke1.setName("王东栋");
		strokes.add(stroke1);
		stroke1 = new Stroke();
		stroke1.setName("张三");
		strokes.add(stroke1);
		stroke1 = new Stroke();
		strokes.add(stroke1);
		
Collections.sort(strokes, new ObjectStrokeComparator(Stroke.class, "name"));//对Stroke中的name字段排序

2.StringStrokeComparator:针对String排序
对List排序:

List<String> name = new ArrayList<String>();
		name.add("李四");
		name.add("张三44");
		name.add("张三是");
		name.add("张三2");
		name.add("张三");
		name.add("赵明");
		name.add("王东西");
		
		Collections.sort(name, new StringStrokeComparator());

也可以利用ObjectStrokeComparator对String进行排序,使用如下,第二个参数可以为null。

Collections.sort(name, new ObjectStrokeComparator(String.class, ""));

3.SubObjectStrokeComparator:针对类子类下String排序
(需要类下面的字段相对应)
对List排序:

public class Parent{
		
		private Stroke stroke;

		public Stroke getStroke() {
			return stroke;
		}

		public void setStroke(Stroke stroke) {
			this.stroke = stroke;
		}
	}


排序
List<Parent> parents = new ArrayList<MainActivity.Parent>();
		Collections.sort(parents, new SubObjectStrokeComparator("stroke.name"));

以上所有的排序都需要为排序字段生成get,set方法!

jar下载地址:点我下载
源代码下载:点我下载

    原文作者:Jone_峰
    原文地址: https://blog.csdn.net/u013271384/article/details/76549368
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。

相关文章