Java之经典Student问题2
创建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
Java之经典Student问题2的更多相关文章
- JAVA之经典Student问题1
通过“三目运算符”求最大值与最小值. class student { //定义学生编号 private String stu; //学生姓名 private String name; //学生书信成绩 ...
- java设计模式大全 Design pattern samples in Java(最经典最全的资料)
java设计模式大全 Design pattern samples in Java(最经典最全的资料) 2015年06月19日 13:10:58 阅读数:11100 Design pattern sa ...
- MVC设计模式与Java Web经典三层架构
MVC设计模式 MVC的概念 首先我们需要知道MVC模式并不是javaweb项目中独有的,MVC是一种软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控 ...
- 【视频+图文】Java基础经典练习题(一)输出2-100之间的素数,及素数个数
目录 第一题:判断2-100之间有多少个素数,并输出所有素数. 1.视频讲解: 2.思路分析: 代码讲解:以i=4为例 4.为大家准备了彩蛋: 能解决题目的代码并不是一次就可以写好的 我们需要根据我们 ...
- JAVA多线程经典问题 -- 生产者 消费者
工作2年多来一直也没有计划写自己的技术博客,最近辞职在家翻看<thingking in JAVA>,偶尔看到了生产者与消费者的一个经典的多线程同步问题.本人在工作中很少使用到多线程以及高并 ...
- JAVA基础经典面试
[前言] 整理好久,这篇总结写的超级好,很全面.要全部背下来,至于框架应用那块,一定要有针对的,多写项目,照着慕课的对应项目. 链接:http://www.importnew.com/22083.ht ...
- Java面试经典题目合集
32 1.”static”关键字是什么意思?Java中是否可以覆盖(override)一个private或者是static的方法? “static”关键字表明一个成员变量或者是成员方法与类相关,可以在 ...
- 【Java】经典示例代码
成鹏致远 | lcw.cnblogs.com | 2014-02-08 单例设计模式 class Singleton{ private static Singleton instance = new ...
- Java书籍经典Top10
1)Java Language Specification, Third Edition (by James Gosling) 本书由Java技术的发明者编写,是Java TM编程语言的权威性技术指南 ...
随机推荐
- 你已经毁了JavaScript
以前 过去我们在页面上用很时尚的方式写了一些确实很可怕的代码,它给我们带来了巨大的麻烦.可能很多人现在还在这样做,但他们不会看这篇博文,我们可以假装他们不存在. JS的伟大/了不起/让人惊讶的地方在于 ...
- 兼容,原来在这里就已经開始--------Day34
看了两天,算是将w3cschool的javascript部分浏览了一遍.在脑海中大约有了一点概念,也才真切体会到:一入江湖深似海.欲穷此路难上难啊,至少如今看起来是遥遥无期.太多不懂, 太多茫然,只是 ...
- 【JavaScript】JS中没有代码块的概念
<script> var m = "roboce"; if(m === "roboce"){ var k = "haha"; } ...
- Python之美[从菜鸟到高手]--深刻理解原类(metaclass)
本来想自己写这篇文章的,可当我读了这篇文章http://blog.jobbole.com/21351/,我打消了这个念头,因为肯定写的没有人家的好,说的通俗易懂,面面俱到.就厚着面皮修改下格式,测试下 ...
- GIT分支管理是一门艺术
英文原文:http://www.nvie.com/posts/a-successful-git-branching-model/ 原文作者:Vincent Driessen 本文经Linux大棚博主总 ...
- cocos2d-x jsbinding 在线更新策略设计
在线更新是用脚本编写游戏逻辑的特有功能,由于脚本语言是边解释边编译的特性,使得游戏在运行的时候可以通过下载最新的脚本来执行游戏逻辑.在不修改Native接口的情况下,在线更新每次更新只需要下载一个(5 ...
- mysql 参数read_rnd_buffer_size的真正含义
http://dev.mysql.com/doc/refman/5.7/en/order-by-optimization.html http://dev.mysql.com/doc/refman/ ...
- IOS中类和对象还有,nil/Nil/NULL的区别
转自:http://blog.sina.com.cn/s/blog_5fb39f910101akm1.html 类与对象的概念 类是对同一类事物高度的抽象,类中定义了这一类对象所应具有的静态属性(属性 ...
- 在ascx中调用另一个ascx的写法
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...
- NopCmmerce Area前后台分离
Nop 前后台是独立的应用程序:使用用Area技术分离:Nop.Admin项目放在Nop.Web项目的administration文件夹下面,通过编辑类库输入路径到Nop.Web的Bin目录下面: 分 ...