javaarraylist排序学生姓名(java语言建立一个班级学生姓名的字符串数组并进行排序)

本文目录
- java语言建立一个班级学生姓名的字符串数组并进行排序
- 用java定义学生类(学号、姓名、成绩)用列表list存放班级学生信息然后按照成绩排序,并输出学生信息
- java 中有城市类 存在arraylist 怎么让它按名字首字母排序
- java,按照身高对学生进行排序,怎么编写
java语言建立一个班级学生姓名的字符串数组并进行排序
import java.text.Collator;
import java.util.Arrays;
import java.util.Comparator;
public class NameSortDemo {
public static void main(String args) {
String names = { "孙小美", "阿土伯", "小明", "钱夫人", "小红", "小菜" };
System.out.println("排序前:");
for (String name : names) {
System.out.print(name+" ");
}
System.out.println();
Comparator cmp = Collator.getInstance(java.util.Locale.CHINA);//排序规则
Arrays.sort(names, cmp);//排序
System.out.println("排序后:");
for (String name : names) {
System.out.print(name + " ");
}
}
}
输出
排序前:
孙小美 阿土伯 小明 钱夫人 小红 小菜
按拼音排序后:
阿土伯 钱夫人 孙小美 小菜 小红 小明
用java定义学生类(学号、姓名、成绩)用列表list存放班级学生信息然后按照成绩排序,并输出学生信息
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class Admin {
public static void main(String... args) {
List data = new ArrayList();
Student s0 = new Student();
s0.setNo("000");
s0.setName("a");
s0.setChengji(100.0);
data.add(s0);
Student s1 = new Student();
s1.setNo("001");
s1.setName("b");
s1.setChengji(99.0);
data.add(s1);
Student s2 = new Student();
s2.setNo("002");
s2.setName("c");
s2.setChengji(98.0);
data.add(s2);
System.out.println("排序前");
show(data);
System.out.println("排序后");
sort(data);
show(data);
}
private static void sort(List data) {
Collections.sort(data, new Comparator() {
public int compare(Object o1, Object o2) {
Student s1 = (Student) o1;
Student s2 = (Student) o2;
return (int) (s1.getChengji() - s2.getChengji());
}
});
}
private static void show(List data) {
for (int i = 0; i 《 data.size(); i++) {
System.out.println(data.get(i));
}
}
}
class Student {
private String no;
private String name;
private double chengji;
public double getChengji() {
return chengji;
}
public void setChengji(double chengji) {
this.chengji = chengji;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getNo() {
return no;
}
public void setNo(String no) {
this.no = no;
}
public String toString() {
return "学号:" + no + ",姓名:" + name + ",成绩:" + chengji;
}
}
结果
排序前
学号:000,姓名:a,成绩:100.0
学号:001,姓名:b,成绩:99.0
学号:002,姓名:c,成绩:98.0
排序后
学号:002,姓名:c,成绩:98.0
学号:001,姓名:b,成绩:99.0
学号:000,姓名:a,成绩:100.0
java 中有城市类 存在arraylist 怎么让它按名字首字母排序
参考代码如下
import java.util.ArrayList;
import java.util.Comparator;
public class ListDemo {
public static void main(String args) {
ArrayList《String》 city = new ArrayList《String》();
city.add("Jonesboro");
city.add("Chaohu");
city.add("LittleRock");
city.add("bridgeport");
city.add("Rome");
city.add("chicago");
System.out.println("排序前"+city);
//排序.
city.sort(new Comparator《String》() {
//重点是这个函数
public int compare(String o1, String o2) {
//忽略掉大小写后,进行字符串的比较
String s1 = o1.toLowerCase();
String s2 = o2.toLowerCase();
return s1.compareTo(s2);//从a-z的排
//return s2.compareTo(s1);//从z-a的排
}
});
System.out.println("排序后"+city);
}
}
运行效果
排序前
排序后
java,按照身高对学生进行排序,怎么编写
import java.util.ArrayList;
import java.util.List;
import com.lili.task.TaskSchedulerException;
public class Student implements Comparable{
/**
* 测试
* @param args
* @throws TaskSchedulerException
*/
public static void main(String args) throws Exception {
Student ;
ss = new Student();
ss.setId("100");
ss.setName("张一");
ss.setStature(180.1f);
ss = new Student();
ss.setId("200");
ss.setName("张三");
ss.setStature(170.0f);
ss = new Student();
ss.setId("100");
ss.setName("张二");
ss.setStature(179.3f);
ss = new Student();
ss.setId("300");
ss.setName("张三");
ss.setStature(190.1f);
ss = new Student();
ss.setId("400");
ss.setName("张四");
ss.setStature(170.1f);
ss = new Student();
ss.setId("500");
ss.setName("张五");
ss.setStature(168.1f);
System.out.println("--------排序前---------"+"\n"+java.util.Arrays.asList(ss).toString());
java.util.Arrays.sort(ss);
System.err.println("--------排序后---------"+"\n"+java.util.Arrays.asList(ss).toString());
}
//学号
private String id;
//姓名
private String name;
//身高
private float stature;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public float getStature() {
return stature;
}
public void setStature(float stature) {
this.stature = stature;
}
/**
* 重写 对象比较大小方法
*/
public int compareTo(Object o) {
if(o instanceof Student){
if(o == null){
return 1;
}else{
float f = this.stature -((Student)o).getStature();
return (f》0 ? 1 : f ==0 ? 0 : -1);
}
}
return 0;
}
public String toString() {
return "{ 学号:"+this.id+" , 姓名:"+this.name+" , 身高:"+this.stature+" }";
}
}

更多文章:
c程序设计实训教程第二版(C程序设计(第三版)与C程序设计(第二版)有什么区别都是谭浩强的那个)
2025年10月17日 06:00
phpstorm怎么保存(phpstorm 怎么设置自动上传)
2025年12月11日 13:00
怎样用html制作一个简单的网页(怎样利用记事本和HTML制作一个简单的网页)
2026年4月21日 01:15
无法打开360安全卫士(360安全卫士打不开怎么办为什么360安全卫士打不开)
2026年8月20日 04:45
美国img模特经纪公司(有谁知道国际有名的模特经纪公司有那些)
2026年8月7日 17:15
excel2010函数教案(excel函数培训教程步骤讲解)
2026年7月19日 04:45
datagridview单元格值改变事件(C# 如何在dataGridView中直接修改单元格的值)
2025年12月28日 05:45
java字符串截取后两位(JAVA截取所有指定字符后面的字符串)
2025年12月5日 23:15
soap请求(soap协议和普通的post请求有什么区别呢)
2026年5月6日 22:15
















