创建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的更多相关文章

  1. JAVA之经典Student问题1

    通过“三目运算符”求最大值与最小值. class student { //定义学生编号 private String stu; //学生姓名 private String name; //学生书信成绩 ...

  2. java设计模式大全 Design pattern samples in Java(最经典最全的资料)

    java设计模式大全 Design pattern samples in Java(最经典最全的资料) 2015年06月19日 13:10:58 阅读数:11100 Design pattern sa ...

  3. MVC设计模式与Java Web经典三层架构

    MVC设计模式 MVC的概念 首先我们需要知道MVC模式并不是javaweb项目中独有的,MVC是一种软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控 ...

  4. 【视频+图文】Java基础经典练习题(一)输出2-100之间的素数,及素数个数

    目录 第一题:判断2-100之间有多少个素数,并输出所有素数. 1.视频讲解: 2.思路分析: 代码讲解:以i=4为例 4.为大家准备了彩蛋: 能解决题目的代码并不是一次就可以写好的 我们需要根据我们 ...

  5. JAVA多线程经典问题 -- 生产者 消费者

    工作2年多来一直也没有计划写自己的技术博客,最近辞职在家翻看<thingking in JAVA>,偶尔看到了生产者与消费者的一个经典的多线程同步问题.本人在工作中很少使用到多线程以及高并 ...

  6. JAVA基础经典面试

    [前言] 整理好久,这篇总结写的超级好,很全面.要全部背下来,至于框架应用那块,一定要有针对的,多写项目,照着慕课的对应项目. 链接:http://www.importnew.com/22083.ht ...

  7. Java面试经典题目合集

    32 1.”static”关键字是什么意思?Java中是否可以覆盖(override)一个private或者是static的方法? “static”关键字表明一个成员变量或者是成员方法与类相关,可以在 ...

  8. 【Java】经典示例代码

    成鹏致远 | lcw.cnblogs.com | 2014-02-08 单例设计模式 class Singleton{ private static Singleton instance = new ...

  9. Java书籍经典Top10

    1)Java Language Specification, Third Edition (by James Gosling) 本书由Java技术的发明者编写,是Java TM编程语言的权威性技术指南 ...

随机推荐

  1. ReactNative学习实践--动画初探之加载动画

    学习和实践react已经有一段时间了,在经历了从最初的彷徨到解决痛点时的兴奋,再到不断实践后遭遇问题时的苦闷,确实被这一种新的思维方式和开发模式所折服,react不是万能的,在很多场景下滥用反而会适得 ...

  2. linux C高手成长过程---书籍推荐

    建议学习路径: 首先先学学编辑器,vim, emacs什么的都行. 然后学make file文件,只要知道一点就行,这样就可以准备编程序了. 然后看看<C程序设计语言>K&R,这样 ...

  3. Shell脚本[运算表达式,条件控制语句]

    #!/bin/bash #你值得收藏的四则表达式运算. val1=1 val2=1 val3=1 val4=1 val5=1 val6=1 val7=1 let val1++ ((val2++)) v ...

  4. Swift 本地推送通知UILocalNotification

    Notification是智能手机应用开发中常用的信息传递机制,它不用消耗更多资源去不停的检查信息状态,可以非常好的节省资源. 在iOS中分为两种通知:本地.远程.本地的UILocalNotifica ...

  5. iOS开发——实用技术OC篇&简单抽屉效果的实现

    简单抽屉效果的实现 就目前大部分App来说基本上都有关于抽屉效果的实现,比如QQ/微信等.所以,今天我们就来简单的实现一下.当然如果你想你的效果更好或者是封装成一个到哪里都能用的工具类,那就还需要下一 ...

  6. JRebel_修改class后无法正确调试问题解决【2014-03-12】

    原文地址:http://www.cnblogs.com/hbbbs/p/3596179.html 现象 修改了class,编译后,JRebel自动装载到Web容器中.但此时调试这个类会发现无法正常调试 ...

  7. 林子雨老师团队《Architecture of a Database System》 中文版

    http://dblab.xmu.edu.cn/post/architecture-of-a-database-system/

  8. IDEA加密(转)

    1. 简介 IDEA是International Data Encryption Algorithm 的缩写,是1990年由瑞士联邦技术学院来学嘉X.J.Lai 和Massey提出的建议标准算法称作P ...

  9. centos复制到另外一台电脑连不上网

    http://snow-berry.iteye.com/blog/1991754 从一台电脑virtual box克隆出来的centos.vdi复制到另外一台电脑,找不到网卡,提示Device eth ...

  10. EMS电子面单接口对接使用-免费版

    快递鸟电子面单接口,可一次对接15家快递公司, 无需和每一家快递公司做对接.支持快递有四通一达.顺丰.EMS.宅急送.德邦.优速等15家快递公司,对顺丰有电子面单服务需求的可以选择顺丰自有的电子面单或 ...