问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java编写求两种方法

发布网友 发布时间:2022-04-24 10:03

我来回答

1个回答

热心网友 时间:2023-10-09 18:30

要比较对象,需要实现Compareable接口,实现里面compareTo的方法,然后使用Collections工具类里面的sort方法进行比较,

其中compareTo返回值大于0 可以理解成“降序”大的那个排前面,反之“升序”,等于0就说明两个比较对象相等

下面是实例(比较字符串不是比较拼音,如果要比较拼音只是将他的名字转拼音排序,原理一样)

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Random;

public class SortTest {
static String base = "\u7684\u4e00\u4e86\u662f\u6211\u4e0d\u5728\u4eba\u4eec\u6709\u6765\u4ed6\u8fd9\u4e0a\u7740\u4e2a\u5730\u5230\u5927\u91cc\u8bf4\u5c31\u53bb\u5b50\u5f97\u4e5f\u548c\u90a3\u8981\u4e0b\u770b\u5929\u65f6\u8fc7\u51fa\u5c0f\u4e48\u8d77\u4f60\u90fd\u628a\u597d\u8fd8\u591a\u6ca1\u4e3a\u53c8\u53ef\u5bb6\u5b66\u53ea\u4ee5\u4e3b\u4f1a\u6837\u5e74\u60f3\u751f\u540c\u8001\u4e2d\u5341\u4ece\u81ea\u9762\u524d\u5934\u9053\u5b83\u540e\u7136\u8d70\u5f88\u50cf\u89c1\u4e24\u7528\u5979\u56fd\u52a8\u8fdb\u6210\u56de\u4ec0\u8fb9\u4f5c\u5bf9\u5f00\u800c\u5df1\u4e9b\u73b0\u5c71\u6c11\u5019\u7ecf\u53d1\u5de5\u5411\u4e8b\u547d\u7ed9\u957f\u6c34\u51e0\u4e49\u4e09\u58f0\u4e8e\u9ad8\u624b\u77e5\u7406\u773c\u5fd7\u70b9\u5fc3\u6218\u4e8c\u95ee\u4f46\u8eab\u65b9\u5b9e\u5403\u505a\u53eb\u5f53\u4f4f\u542c\u9769\u6253\u5462\u771f\u5168\u624d\u56db\u5df2\u6240\u654c\u4e4b\u6700\u5149\u4ea7\u60c5\u8def\u5206\u603b\u6761\u767d\u8bdd\u4e1c\u5e2d\u6b21\u4eb2\u5982\u88ab\u82b1\u53e3\u653e\u513f\u5e38\u6c14\u4e94\u7b2c\u4f7f\u5199\u519b\u5427\u6587\u8fd0\u518d\u679c\u600e\u5b9a\u8bb8\u5feb\u660e\u884c\u56e0\u522b\u98de\u5916\u6811\u7269\u6d3b\u90e8\u95e8\u65e0\u5f80\u8239\u671b\u65b0\u5e26\u961f\u5148\u529b\u5b8c\u5374\u7ad9\u4ee3\u5458\u673a\u66f4\u4e5d\u60a8\u6bcf\u98ce\u7ea7\u8ddf\u7b11\u554a\u5b69\u4e07\u5c11\u76f4\u610f\u591c\u6bd4\u9636\u8fde\u8f66\u91cd\u4fbf\u6597\u9a6c\u54ea\u5316\u592a\u6307\u53d8\u793e\u4f3c\u58eb\u8005\u5e72\u77f3\u6ee1\u65e5\u51b3\u767e\u539f\u62ff\u7fa4\u7a76\u5404\u516d\u672c\u601d\u89e3\u7acb\u6cb3\u6751\u516b\u96be\u65e9\u8bba\u5417\u6839\u5171\u8ba9\u76f8\u7814\u4eca\u5176\u4e66\u5750\u63a5\u5e94\u5173\u4fe1\u89c9\u6b65\u53cd\u5904\u8bb0\u5c06\u5343\u627e\u4e89\u9886\u6216\u5e08\u7ed3\u5757\u8dd1\u8c01\u8349\u8d8a\u5b57\u52a0\u811a\u7d27\u7231\u7b49\u4e60\u9635\u6015\u6708\u9752\u534a\u706b\u6cd5\u9898\u5efa\u8d76\u4f4d\u5531\u6d77\u4e03\u5973\u4efb\u4ef6\u611f\u51c6\u5f20\u56e2\u5c4b\u79bb\u8272\u8138\u7247\u79d1\u5012\u775b\u5229\u4e16\u521a\u4e14\u7531\u9001\u5207\u661f\u5bfc\u665a\u8868\u591f\u6574\u8ba4\u54cd\u96ea\u6d41\u672a\u573a\u8be5\u5e76\u5e95\u6df1\u523b\u5e73\u4f1f\u5fd9\u63d0\u786e\u8fd1\u4eae\u8f7b\u8bb2\u519c\u53e4\u9ed1\u544a\u754c\u62c9\u540d\u5440\u571f\u6e05\u9633\u7167\u529e\u53f2\u6539\u5386\u8f6c\u753b\u9020\u5634\u6b64\u6cbb\u5317\u5fc5\u670d\u96e8\u7a7f\u5185\u8bc6\u9a8c\u4f20\u4e1a\u83dc\u722c\u7761\u5174\u5f62\u91cf\u54b1\u89c2\u82e6\u4f53\u4f17\u901a\u51b2\u5408\u7834\u53cb\u5ea6\u672f\u996d\u516c\u65c1\u623f\u6781\u5357\u67aa\u8bfb\u6c99\u5c81\u7ebf\u91ce\u575a\u7a7a\u6536\u7b97\u81f3\u653f\u57ce\u52b3\u843d\u94b1\u7279\u56f4\u5f1f\u80dc\u6559\u70ed\u5c55\u5305\u6b4c\u7c7b\u6e10\u5f3a\u6570\u4e61\u547c\u6027\u97f3\u7b54\u54e5\u9645\u65e7\u795e\u5ea7\u7ae0\u5e2e\u5566\u53d7\u7cfb\u4ee4\u8df3\u975e\u4f55\u725b\u53d6\u5165\u5cb8\u6562\u6389\u5ffd\u79cd\u88c5\u9876\u6025\u6797\u505c\u606f\u53e5\u533a\u8863\u822c\u62a5\u53f6\u538b\u6162\u53d4\u80cc\u7ec6";

public static void main(String[] args) {
Random r = new Random();
List<Person_> person_s = new ArrayList<Person_>();
for (int i = 0; i < 50; i++) {
Person_ person_ = new Person_();
person_.setAge(r.nextInt(10)+18);
person_.setId(r.nextInt());
person_.setName(new String(new char[] {
base.charAt(r.nextInt(base.length())),
base.charAt(r.nextInt(base.length())),
base.charAt(r.nextInt(base.length())) }));
person_s.add(person_);
}
System.out.println("排序前:" + person_s);
Collections.sort(person_s);
System.out.println("排序后:" + person_s);
System.out.println("年龄最大的:"+person_s.get(person_s.size()-1));
}
}

class Person_ implements Comparable<Person_> {
private int age;
private int id;
private String name;

public int getAge() {
return age;
}

public int getId() {
return id;
}

public String getName() {
return name;
}

public void setAge(int age) {
this.age = age;
}

public void setId(int id) {
this.id = id;
}

public void setName(String name) {
this.name = name;
}

@Override
public String toString() {
return "Person_ [age=" + age + ", id=" + id + ", name=" + name + "]";
}

@Override
public int compareTo(Person_ p) {
int result = 0;
if (p.age == this.age) {
result = this.name.compareTo(p.getName());
} else {
result = this.age - p.getAge();
}
return result;
}
}

追问static String base = 那里面字符是什么呀不懂

追答那里面是相对常用的字符Unicode,我只是拿来生成名字

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
企业培训学到了什么 培训感悟简短 有关培训的感悟 通过培训学到什么 培训你学到了什么 领导问培训学到什么怎么回复 Linux系统安装FTP服务器 Linux系统的网络文件共享 建筑的七盏明灯的内容简介 面向对象设计七大原则 简单说 交互设计七大定律 个人作品集用英文怎么说 java 登陆时的验证码怎么做? 电脑256G固态硬盘够用吗? 翻译高手来 JS 怎么制作数字、字母、汉字混合的验证码 用固态硬盘的亲们 你们256g够用么?做什么用途?要买电脑 不得不考虑这... 谁能帮翻译一下(把中文翻译成英文) \u5b9e\u65f6\u70ed\u70b9 求大神翻译谢谢 256G固态硬盘哪个品牌的好? 我把我的公文包落在了浦东国际机场站上了翻译成英文什么意思? 求这篇英语文章的中文翻译 给电脑安256G固态硬盘够用吗? 时机器人会为我准备好公文包的翻译是:什么意思 包英语怎么说? 公文包法文,公文包法语翻译,公文包法文怎么说,法文 油烟净化器的高压电源总是坏是怎么回事啊 所有包、箱种类的英文名称分别是什么? 油烟净化器的电源为什么用不到一年就坏了? 公文包用英文怎么说? 油烟净化器电源接反了会怎样?油烟机净化器接反了的话当时会烧坏还是要过段时间烧坏_百度问一问 用JAVA做一个网页(注册页) 有匪priest(完结+番外) 百度云 没番外的不要来哦 有谁可以帮我翻译一下 固态硬盘最高是256g吗? &lt;img src=&#39;*.jsp&#39; /&gt;,求高手指点 车流量提升百分比 请高手翻译!谢谢!在线! 256固态硬盘与500G硬盘的区别,学生党,买个能用三年的就差不多了……小白不懂…… 能帮我翻译下面关于箱包的短语和句子吗 怎么用PHP还原这个编码? \u53d6\u7f14\u4f59\u989d\u5b9d 我想报考全国注册动力工程师(锅炉类),但是不知道基础考试与专业考试分别要考哪些内容? 商洛市养老保险个人查询系统 冒险岛075版最新所有物价(七星剑) 手机微信数据恢复用什么软件好?牛学长苹果数据恢复工具好用吗 \u5bf9\u4e0d这类字符是什么编码 &#92;u7126&#92;u70b9&#92;u76f4&#92;u51fb 这是通过什么编码的?.net如何对其进行解码 蓝屏代码stop:0x00000D1 (0xe3212258,0x00000d2,0x0000000,0xb9f67d1a) 什么意思啊 怎么解决呢??? 微信好友删除了,聊天记录也没有了,我试了很多软件,但都是要充钱,有没有不要钱的数据恢复软件? 用微信聊天的时候,不小心把好友的聊天记录清除了,怎么恢复呢? NLP培训到底是干什么的啊?