Java入门

原创 2017年01月02日 22:55:12

编程练习

编程练习:实现输出学生年龄的最大值。
要求:
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)使代码一条一条的执行,我们可以在程序调试窗口中看变量值的变化,从而判断程序问题的所在。


这里写图片描述


这里写图片描述

这里写图片描述

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

java入门到详解

  • 2017-08-18 16:17
  • 481KB
  • 下载

java spring快速入门教程

  • 2017-06-14 10:33
  • 571KB
  • 下载

Memcached基础入门和Java操作Memcached实现增删改查

Memcached基础入门和Java操作Memcached实现增删改查

Java Web 入门

Java经典入门教程pdf完整版

  • 2017-08-11 16:51
  • 1.65MB
  • 下载

Java:注解(Annotation)自定义注解入门

要深入学习注解,我们就必须能定义自己的注解,并使用注解,在定义自己的注解之前,我们就必须要了解Java为我们提供的元注解和相关定义注解的语法。 元注解:   元注解的作用就是负责注解其...

java从入门到精通

  • 2017-08-25 16:54
  • 6.92MB
  • 下载

java编程入门教程电子书

  • 2017-07-27 16:39
  • 875KB
  • 下载

Android入门之RatingBar(纯java)

import android.app.Activity; import android.os.Bundle; import android.widget.*; import android.wi...

java-web 编程入门

  • 2015-12-17 22:33
  • 3.23MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)