开发者学堂课程【Java 高级编程:学生信息比较】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/20/detail/374
学生信息比较
按照“姓名:年龄:成绩姓名:年龄:成绩”的格式定义字符串“张三:21:98|李四:22:89|王五20:70,要求将每组值分别保存在 Student 对象之中,并对这些对象进行排序,排序的原则为:按照成绩由高到低排序,如果成绩相等,则按照年龄由低到高排序。
本程序最典型的做法是直接利用比较器来完成处理,如果不使用比较器也可以完成,相当于自己采用冒泡方式进行排列组合,使用了比较器就可以利用Arrays类做处理。
package cn.mldn. demo;
import java. util.Arrays;.
public class JavaAPIDemo
public static void main(String[] args){
String input="张三:21:98李四:22:89王五:20:70;
String result[] input. split("\");
Student students[]= new Student[result. length]
for (int x =0 x result. length ++)
String temp[= result[x]. split":");
students[] new Student(temp[], Integer. parseInt(temp[1]), Double, parseDouble(temp[2]))
}
Arrays.sort(students);
System,out,printIn(Arrays, tostring(students));
class student implements Comparable<student>{
private string name
private int age
private double score
public Student(string name, int age, double score){
super();
this. name =name;
this. age age;
this score scora.
结构化字符串处理:“内容|内容”,如果有复杂的情况内容里面可能再有其他标记“”