Day5-scanner学习

这篇博客介绍了如何使用Java的Scanner类从控制台获取用户输入,包括读取整数、字符串及实现简单的计算。示例中展示了如何计算输入数字的总和与平均值,并给出了打印99乘法表和三角形的代码片段,涵盖了循环结构的运用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Scanner

接受键盘数据new一个新对象 Scanner scanner = new Scanner(System.in);

//判断用户有没有输入字符串,以非字符结束。
scanner.hasNext();
//使用next接受
String str = scanner.next();
//判断是否还有输入,以回车为结束
scanner.hasNextLine()
//使用nextlin接受
String str = scanner.nextLine();
//凡是属于IO流的类如果不关闭会一直占用资源,要养成好习惯用完就关闭
scanner.close();

小练习:输入若干个数,求输入数的总和,平均值,每输入一个数字用回车确定,通过输入非数字赖结束输入并输出结果

package com.Austin.scanner;
​
import java.util.Scanner;
​
public class Demo4 {
    public static void main(String[] args) {
        //我们可以输入多个数字,并求其总和与平均数,每输入一个数字用回车确定,通过输入非数字赖结束输入并输出结果
        Scanner scanner = new Scanner(System.in);
​
        //总和
        double sum = 0;
        //计算输入多少个数字
        int m =0;
        //通过循环判断是否有输入,并在里面对每一次进行求和统计
        while (scanner.hasNextDouble()) {
            //接收数赋值给X
            double x = scanner.nextDouble();
            m = m+1;//m++
            //求和
            sum = sum +x;
            System.out.println("您输入的第"+m+"个数,当前总和为"+sum);
        }
​
        System.out.println(m+"个数的总和为"+sum);
        System.out.println(m+"个数的平均值为"+sum/m);
        scanner.close();
    }
}

三种结构:顺序,选择,循环

打印一个99乘法表

//打印99乘法表
/*
1*1=1
1*2=2  2*2=4
1*3=3  2*3=6  3*3=9
1*4=4  2*4=8  3*4=12 4*4=16
1*5=5  2*5=10 3*5=15 4*5=20 5*5=25
1*6=6  2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7  2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8  2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9  2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
 */
public class Dome99 {
    public static void main(String[] args) {
        for (int i = 1; i <= 9; i++) {
            for (int j = 1; j <= i; j++) {
                //1到9,每一行变的是j,不变的是i
                System.out.print(j+"*"+i+"="+(j*i)+"\t");
            }
            //换行
            System.out.println();
        }
    }
}

打印一个三角形

public class TestDemo {
    public static void main(String[] args) {
        //打印一个三角形e
        //打印五行
        for (int i = 1; i <= 5; i++) {
           //打印空格
            for (int j = 5; j >= i ; j--) {
                System.out.print(" ");
            }
            //打印三角形左边那一半
            for (int j = 1; j <=i ; j++) {
                System.out.print("*");
            }
            //打印三角形右边那一半
            for (int j = 1; j <i ; j++) {
                System.out.print("*");
            }
            //换行
            System.out.println();
        }
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值