Java之经典Student问题2
2024-10-21 03:15:56
创建5个学生对象给一个学生数组赋值,每个学生属性有:学号、姓名、年龄。
要求:1.给每个学生排序输出。 2.给所有学生年龄加1。 3.统计年龄大于20的学生人数。
在这里,我们用了compareTo方法,其实compareTo就是用来比较两个值,如果前者大于后者,返回1,等于返回0,小于返回-1
package com.cdp.student; public class student {
// 属性
private String name;
private String number;
private int age;
// 构造方法
public student() {
}
// 带参数的构造方法
public student(String number, String name, int age) {
this.age = age;
this.name = name;
this.number = number;
}
public static void main(String[] args) {
// 统计学生人数
int count = 0;
// 定义一个学生数组
student[] s = new student[5];
// 给每个学生赋值
s[0] = new student("学号234", "小三", 18);
s[1] = new student("学号123", "小四", 21);
s[2] = new student("学号456", "小五", 20);
s[3] = new student("学号879", "小六", 22);
s[4] = new student("学号785", "小七", 18);
// 按学号排序
for (int i = 0; i < s.length - 1; i++) {
for (int j = i + 1; j < s.length; j++) {
if (s[i].number.compareTo(s[j].number) > 0) {
// 此时i和j位置上的 元素互换
student temp = new student();
temp = s[i];
s[i] = s[j];
s[j] = temp;
}
}
} for (int i = 0; i < s.length; i++) {
System.out.println("学生排序为:" + s[i].number + " 姓名:" + s[i].name
+ " 年龄:" + s[i].age);
}
// 给所有学生年龄加1
for (int i = 0; i < 5; i++) {
s[i].age = s[i].age + 1;
System.out.println("所有学生年龄加1:" + s[i].number + " 姓名:" + s[i].name
+ " 年龄:" + s[i].age);
}
// 统计大于20岁的学生
for (int i = 0; i < 5; i++) {
if (s[i].age > 20) {
count++;
}
}
System.out.println("年龄大于20的学生人数为:" + count);
}
}
运行结果:
学生排序为:学号123 姓名:小四 年龄:21
学生排序为:学号234 姓名:小三 年龄:18
学生排序为:学号456 姓名:小五 年龄:20
学生排序为:学号785 姓名:小七 年龄:18
学生排序为:学号879 姓名:小六 年龄:22
所有学生年龄加1:学号123 姓名:小四 年龄:22
所有学生年龄加1:学号234 姓名:小三 年龄:19
所有学生年龄加1:学号456 姓名:小五 年龄:21
所有学生年龄加1:学号785 姓名:小七 年龄:19
所有学生年龄加1:学号879 姓名:小六 年龄:23
年龄大于20的学生人数为:3
最新文章
- 在Myeclipse中提交代码到GitHub中
- 同一服务器上多个版本的 sqlserver ,如何连接,改变某一实例的端口号
- js checkbox 选中判断
- Win10 VS2015 社区版切换到VS2013社区版 进行维护之前的项目
- PostgreSQL Replication之第十一章 使用Skytools(2)
- 改变ListCtrl某行的背景色或者字体颜色
- String filePath = request.getSession().getServletContext().getRealPath(";/";);这句话返回的路径是什么,解释下getRealPath(";/";)函数中的";/";表示什么意思
- 什么是CGI(Common Gateway Interface)?
- Configure swagger with spring boot
- log4j日志输出配置
- 基于视觉的Web页面分页算法VIPS的实现源代码下载
- Servlet(一)基础总结
- Redis中的数据对象
- 2.跑nodejs文件
- Android模拟器
- ●SPOJ 8222 NSUBSTR–Substrings
- jQuery学习之旅 Item3 属性操作与样式操作
- Cocos Creator 资源加载流程剖析【二】——Download部分
- C#自定义应用程序上下文对象+IOC自己实现依赖注入
- Git更改用户名与回退操作