Java继承练习

构建Person类(属性:名字、年龄、工作岗位),创建三个对象,并且根据对象的年龄或名字长度来进行冒泡排序

java 复制代码
package chapter08.homework.test01;

public class homework01 {
    public static void main(String[] args) {
        Person[] persons = new Person[3];
        persons[0] = new Person("tom",66,"软件工程师");
        persons[1] = new Person("jack",20,"java工程师");
        persons[2] = new Person("smith",21,"python工程师");
        for (int i = 0; i < persons.length; i++) {
            System.out.println(persons[i]);//默认调Person的toString方法
        }
        Person tem = null;
        for (int i = 0; i < persons.length-1; i++) {
            for (int j = 0; j < persons.length-1-i; j++) {
                //前面人的年龄小于后面的,就交换
//                if (persons[i].getAge()>persons[i+1].getAge()) {
//                   tem=persons[i];
//                    persons[i]=persons[i+1];
//                    persons[i+1]= tem;
//                }
                //按照名字长度排序
                if (persons[i].getName().length()>persons[i+1].getName().length()) {
                    tem=persons[i];
                    persons[i]=persons[i+1];
                    persons[i+1]= tem;
                }
            }
        }
        System.out.println("*********************");
        for (int i = 0; i < persons.length; i++) {

            System.out.println(persons[i]);//默认调Person的toString方法
        }
    }
}
class Person{
    private String name;
    private int age;
    private String job;

    public Person(String name, int age, String job) {
        this.name = name;
        this.age = age;
        this.job = job;
    }

    public String getName() {
        return name;
    }

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

    public int getAge() {
        return age;
    }

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

    public String getJob() {
        return job;
    }

    public void setJob(String job) {
        this.job = job;
    }

    @Override
    public String toString() {
        return "Person{" +
                "name='" + name + '\'' +
                ", age=" + age +
                ", job='" + job + '\'' +
                '}';
    }
}
相关推荐
csbysj20206 分钟前
如何使用 XML Schema
开发语言
R6bandito_11 分钟前
STM32中printf的重定向详解
开发语言·经验分享·stm32·单片机·嵌入式硬件·mcu
earthzhang202119 分钟前
【1007】计算(a+b)×c的值
c语言·开发语言·数据结构·算法·青少年编程
西瓜er21 分钟前
JAVA:Spring Boot 集成 FFmpeg 实现多媒体处理
java·spring boot·ffmpeg
你总是一副不开心的样子(´ . .̫ .25 分钟前
一、十天速通Java面试(第三天)
java·面试·职场和发展·java面试
杨枝甘露小码26 分钟前
Python学习之基础篇
开发语言·python
迎風吹頭髮35 分钟前
UNIX下C语言编程与实践63-UNIX 并发 Socket 编程:非阻塞套接字与轮询模型
java·c语言·unix
我是华为OD~HR~栗栗呀38 分钟前
23届考研-Java面经(华为OD)
java·c++·python·华为od·华为·面试
武文斌771 小时前
项目学习总结:LVGL图形参数动态变化、开发板的GDB调试、sqlite3移植、MQTT协议、心跳包
linux·开发语言·网络·arm开发·数据库·嵌入式硬件·学习
Javatutouhouduan1 小时前
Java程序员如何深入学习JVM底层原理?
java·jvm·java面试·后端开发·java架构师·java程序员·互联网大厂