关闭

Java入门

标签: java
86人阅读 评论(0) 收藏 举报
分类:

编程练习

编程练习:实现输出学生年龄的最大值。
要求:
1、 要求通过定义无参带返回值的方法来实现,返回值为最大年龄
2、 方法中将​学生年龄保存在数组 ages 中,数组元素依次为 18 ,23 ,21 ,19 ,25 ,29 ,17
运行效果为: 最大年龄为:29

    public class Text01 {

        //完成 main 方法
       public static void main(String[] args) {

        // 创建对象,对象名为hello
        Demo0205 hello = new Demo0205(); 

        // 调用方法并将返回值保存在变量中
        int maxScore=hello.getMaxAge();

        // 输出最大年龄
        System.out.println("最大年龄为:" + maxScore); 
    }

    /*
     * 功能:输出学生年龄的最大值 
     * 定义一个无参的方法,返回值为年龄的最大值
     * 参考步骤:
     * 1、定义一个整形数组 ages ,保存学生年龄,数组元素依次为 18 ,23 ,21 ,19 ,25 ,29 ,17
     * 2、定义一个整形变量 max ,保存学生最大年龄,初始时假定数组中的第一个元素为最大值
     * 3、使用 for 循环遍历数组中的元素,并与假定的最大值比较,如果比假定的最大值要大,则替换当前的最大值
     * 4、使用 return 返回最大值
     */
     //方法一:
    public int getMaxAge() {
     int[] ages={18,23,21,19,25,20,29,17};
     int max=0;
     for(int i:ages)
     {  max=max>=i?max:i; }
     return max;
    }
    //方法二:
    /*  public int getMaxAge() {
    int[] ages = {18,23,21,19,25,29,17};
    Arrays.sort(ages);
    int max = ages[ages.length-1];
    return max;    
    }
    */
    //方法三:
    /*  public int getMaxAge() {
    int ages[]={18 ,23 ,21 ,19 ,25 ,29 ,17};
    int max=ages[0];
    for(int i=0;i<ages.length;i++)
      if(max<ages[i])max=ages[i];
    return max;
    }
    */
    }

执行结果

其中,方法一使用foreach遍历数组中的元素,foreach是for语句的特殊简化版本,在遍历数组、集合时, foreach更简单便捷。
foreach语法:

for(元素类型 元素变量:遍历对象){

执行的代码

}

方法二中为排序:Array.sort(ages);
Eclipse内容提示快捷键:syso+alt+/

程序优化:

整个练习中,学生年龄信息的值是固定的,用户自己不能输入值,如何让用户自己输入学生年龄的这些值呢?Java中提供了scanner工具类来获取用户输入的值。scanner类位于java.util包中,使用时需要导入这个包,步骤:

  • 导入java.util.Scanner这个工具类

在包声明(如:package com.dawn;)的下面通过import实现:

import java.util.Scanner;

  • 创建Scanner对象

可以通过Scanner方法获取用户输入的值。
我们在main方法中指定对象的名称,对象的名称可以随便定义,我们常用input:

Scanner input=new Scanner(System.in);

  • 接受并保存用户输入的值

首先,我们要提示用户输入信息,System.out.println(“请输入年龄信息:”);
接受用户信息:

int ages=input.nextInt();

如果获取的信息是浮点数则为nextDouble()实现。

程序调试

利用IDE工具提供的断点调试的功能
我们假设循环出现问题,那么在for这条代码前双击可以看到实心圆,即断点。

这里写图片描述

程序运行到这个位置会自动停止,这样我们就可以进行一步一步的调试。

如何进行调试呢?
点击工具栏上Debug按钮,出现调试试图,执行到我们设置的断点的位置,程序并没有往下执行即执行到for前面

Debug按钮

调试试图


我们通过点击工具栏上面的Step Over(或者F6)使代码一条一条的执行,我们可以在程序调试窗口中看变量值的变化,从而判断程序问题的所在。


这里写图片描述


这里写图片描述

这里写图片描述

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1241次
    • 积分:155
    • 等级:
    • 排名:千里之外
    • 原创:16篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章分类