创建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

最新文章

  1. 在Myeclipse中提交代码到GitHub中
  2. 同一服务器上多个版本的 sqlserver ,如何连接,改变某一实例的端口号
  3. js checkbox 选中判断
  4. Win10 VS2015 社区版切换到VS2013社区版 进行维护之前的项目
  5. PostgreSQL Replication之第十一章 使用Skytools(2)
  6. 改变ListCtrl某行的背景色或者字体颜色
  7. String filePath = request.getSession().getServletContext().getRealPath(&quot;/&quot;);这句话返回的路径是什么,解释下getRealPath(&quot;/&quot;)函数中的&quot;/&quot;表示什么意思
  8. 什么是CGI(Common Gateway Interface)?
  9. Configure swagger with spring boot
  10. log4j日志输出配置
  11. 基于视觉的Web页面分页算法VIPS的实现源代码下载
  12. Servlet(一)基础总结
  13. Redis中的数据对象
  14. 2.跑nodejs文件
  15. Android模拟器
  16. ●SPOJ 8222 NSUBSTR–Substrings
  17. jQuery学习之旅 Item3 属性操作与样式操作
  18. Cocos Creator 资源加载流程剖析【二】——Download部分
  19. C#自定义应用程序上下文对象+IOC自己实现依赖注入
  20. Git更改用户名与回退操作

热门文章

  1. C#MD5为密码加密
  2. 【工作记录】c#操作win7注册表
  3. (转)用AGG实现高质量图形输出(四)
  4. TOJ3651确定比赛名次
  5. 剑指 offer set 8 树的子结构
  6. linux下网络编程常见问题
  7. Android获取网页上的图片的代码
  8. 1.5.5 Tokenizers
  9. Solr DIH dataconfig配置
  10. mysql 查看表记录新增、修改的时间