导航:首页 > 编程语言 > java自定义类型排序

java自定义类型排序

发布时间:2023-01-26 02:08:58

『壹』 java中如何实现自定义排序

排序依赖于比较;
可以让想要排序的类实现Comparable接口的compareTo函数,在其中定义排序的比较逻辑

『贰』 java自定义按照花色(黑红梅方)排序 怎么写 在线等 好的加分

呵呵 一般是给每张牌设定一个值
1-52
黑桃 1-13
红桃 14-26
梅花 27-39
方块 40-52
这样你就可以排序了嘛。

『叁』 Java 如何对自定义类Vector进行排序

你好,用comparable接口我帮你写了个例子:
package vectorsort;

public class Point implements Comparable<Point>{

private float x;
private float y;

public Point(float x, float y) {
super();
this.x = x;
this.y = y;
}

public float getX() {
return x;
}

public void setX(float x) {
this.x = x;
}

public float getY() {
return y;
}

public void setY(float y) {
this.y = y;
}

@Override
public int compareTo(Point comparePoint) {
int xcomp = (int)((Point)comparePoint).getX();
// 比较x坐标
return (int)(this.getX()-xcomp);
}

public static void main(String[] args) {
Point p1 = new Point(1.0f,2.0f);
Point p2 = new Point(1.5f,2.6f);

System.out.println("x坐标比较结果:"+p1.compareTo(p2));
}

}

O(∩_∩)O~温馨提示O(∩_∩)O~
真心希望你能采纳我的回答,如有不明白,可以继续追问,若满意,记得及时采纳。

『肆』 Java怎么对Excel进行自定义排序

示例代码

import com.spire.xls.*;

public class SortData {

public static void main(String[] args) {

//创建Workbook对象

Workbook workbook = new Workbook();

//加载测试文档

workbook.loadFromFile("G:\360MoveData\Users\Administrator\Desktop\学生成绩表.xlsx");

//获取第一个工作表

Worksheet sheet = workbook.getWorksheets().get(0);

//指定要排序的列号(列号从0开始)以及排序方式(升序或降序)

workbook.getDataSorter().getSortColumns().add(7, SortComparsionType.Values, OrderBy.Descending);

//指定要排序的数据区域

workbook.getDataSorter().sort(sheet.getCellRange("A1:H9"));

//保存文档

workbook.saveToFile("SortData.xlsx", ExcelVersion.Version2013);

}

}

代码参考自Free Spire.XLS for Java 的官网教程文章。

『伍』 Java:自定义一个顺序,然后对List按照该顺序排序。。

用Collections.sort(List list, Comparator c)这个方法来吧源

像你这样的这样写:

Collections.sort(list,newComparator<String>()
{
publicintcompare(Stringo1,Stringo2)
{
//这里写比较方法
intresult=o1.compareTo(o2);
returnresult;//然后return一个int型的值
}

});

『陆』 java 如何对自定义的对象进行排序

//把排序规则交给sort方法。该方法就回按照你自定义的规则进行排序 .util.Arrays.sort(users,new MyComparator()); for (int i = 0; i<users.length; i++){ System.out.println (users[i]);}}}class User{ String name;int age ; public User(String name,int age){ this.name = name; this.age = age;} public String toString(){ return name+":::"+age;}}class MyComparator implements Comparator{ public int compare(Object obj1, Object obj2 ){ User u1 = (User)obj1; User u2 = (User)obj2; if(u1.ageu2.age){return 1;}else if(u1.age<u2.age){return -1;}else{//利用String自身的排序方法。 //如果年龄相同就按名字进行排序

『柒』 java arraylist 自定义排序(刚学java没搞懂自定义排序,举个例子问一下)在线等挺急的 例子在下面

importjava.util.*;

publicclassExample{
publicstaticvoidmain(Stringarg[]){
ArrayList<String>st=newArrayList<String>(Arrays.asList(("癸,乙,辛,丙,甲,壬,戊,己,丁,庚").split(",")));
for(Stringi:st)
System.out.format("%s",i);
System.out.format(" ");

Collections.sort(st,newComparator<String>(){
StringTemplate="甲乙丙丁戊己庚辛壬癸";
publicintcompare(Strings1,Strings2){
return(Template.indexOf(s1)>Template.indexOf(s2))?1:-1;
}
});
for(Stringi:st)
System.out.format("%s",i);
}
}

自定义排序,这里用的是重写comparator

『捌』 JAVA:hashmap根据自定义类型的属性排序

是自己做这个算法么,抄还是要用到java的数据结构,因为hashmap是无序的,Treemap是有序的,但是他们排序不是看value是看key的,是必须这样做么,因为我想如果你用hashMap你是用key来访问里面value的,排不排序意义不大,我建议用TreeSet排序,如果你需要用name就直接遍历set的时候取name就完了,如果不想改变原来的类的结构,就用list加comparator做,如果还是要用map就把排好序的set或list以name为key再放到map里

『玖』 java中treeset定制排序和自然排序的区别

* TreeSet:
* 1.向TreeSet中添加的元素必须是同一个类的。
* 2.可以按照添加进集合中的元素的指定的顺序遍历。像String、包装类等默认按照从小到大的顺序遍历。
* 3.自然排序:当向TreeSet中添加自定义类的对象时,有两种排序方法:①自然排序 ②定制排序
* 4.自然排序:要求自定义类实现java.lang.Comparable接口并重写其compareTo(Object obj)
* 在此方法中,指明按照自定义类的哪个属性来排序。
*
* 5.向TreeSet中添加元素时,首先按照compareTo()进行比较,一旦返回0,虽然仅是两个对象的
* 此属性值相同,但是程序会认为这两个对象是相同的,进而后一个对象就不能添加进来。
*
* >compareTo()与hashCode()以及equals()三者保持一致!
*

『拾』 如何用java实现一个数组的排列

首先根据数组的类型不同排序方式也是不同的,如果是基本类型数组,那么使用冒泡或者其他排序方式都是很简单的,例如:http://blog.csdn.net/yyywyr/article/details/8075433。如果不想自己写排序算法那么使用Arrays.sort()进行排序也是不错的。
如果是自定义类型的数组,推荐使用java自带的工具类:Comparable接口,并重写CompareTo()方法。或者Compartor。

阅读全文

与java自定义类型排序相关的资料

热点内容
ipa里资源文件 浏览:110
苹果的文件管理在那里 浏览:633
qq浏览器文件如何发到qq 浏览:736
百度地图加载多个点代码 浏览:146
数据横向复制如何纵向粘贴 浏览:433
2020cab画图数据怎么调 浏览:534
teamview12linux 浏览:175
java编辑word文件 浏览:149
类似scihub的网站有哪些 浏览:398
ios哪里找小众app 浏览:377
毒霸新闻弹窗是哪个文件 浏览:331
雨林木win10 浏览:881
写好的代码怎么编程小程序 浏览:945
改文件属性软件 浏览:917
linux网卡重启新命令 浏览:216
win10升级工具下 浏览:935
电脑qq怎么传文件到手机qq 浏览:417
被360隔离的文件在哪个文件夹 浏览:971
骷髅教程图 浏览:954
ps淘宝女包修图教程 浏览:568

友情链接