【JAVA基础学习】用户交互Scanner详细讲解!!!

本文介绍了Java中Scanner类如何用于用户交互,包括使用next()和nextLine()方法接收键盘输入的字符串,以及如何处理整数和小数。同时展示了通过hasNext()和hasNextLine()进行条件判断的用法,并提供了一个计算输入数字总和和平均值的示例。
摘要由CSDN通过智能技术生成

用户交互Scanner

next() hasNext() :

//创建一个Scanner对象,用于接收键盘数据
Scanner scanner=new Scanner(System.in);
System.out.println("使用next方式接收:");
//判断用户有无输入字符串
if(scanner.hasNext()){
    /*
    next():
    1.一定要读取到有效字符后才可结束输入
    2.对输入有效字符之前遇到空白,next()会自动将其去掉
    3.next()不能得到带有空格的字符串
     */
    String str=scanner.next();
    System.out.println("输入的内容为:"+str);
}
//凡是属于IO流的类如果不关闭会一直占用资源,要养成好习惯用完就关掉
scanner.close();

nextLine() hasNextLine() :

//从键盘接收数据
Scanner scanner=new Scanner(System.in);
System.out.println("输入的内容为:");
//判断是否有输入
if(scanner.hasNextLine()){
    /*
    nextLine():
    1.以Enter为结束符,也就是nextLine()方法返回的是输入回车之前的所有字符
    2.可以获得空白
     */
    String str=scanner.nextLine();
    System.out.println("输入的内容为:"+str);
}
scanner.close();

可以不用去判断是否有从键盘输入,直接使用:

//从键盘接收数据
Scanner scanner=new Scanner(System.in);
System.out.println("输入的内容为:");
String str=scanner.nextLine();
System.out.println("输入的内容为:"+str);
scanner.close();

Scanner还能输入一些整数、小数:

Scanner scanner=new Scanner(System.in);
int i=0;
double e=0.0;
System.out.println("请输入一个整数:");
if(scanner.hasNextInt()){
    i=scanner.nextInt();
    System.out.println("该整数为:"+i);
}else{
    System.out.println("你输出的不是整数!");
}
​
System.out.println("请输入一个小数:");
if(scanner.hasNextDouble()){
    e=scanner.nextDouble();
    System.out.println("该小数为:"+e);
}else{
    System.out.println("你输出的不是小数!");
}
scanner.close();

练习:

//输入多个数字,并其总和和平均值,通过非数字来结束输入并输出结果
Scanner scanner=new Scanner(System.in);
//和
double sum=0.0;
//计算输入多少个数
int i=0;
System.out.println("请输入几个数字:");
while(scanner.hasNextDouble()){//while是一个循环语句
    double e=scanner.nextDouble();
    i++;
    sum=sum+e;
}
System.out.println(i+"个数的和为:"+sum);
System.out.println(i+"个数的平均值为:"+(sum/i));
scanner.close();

顺序结构

Java的基本结构就是顺序结构,除非特别说明,否则就按照顺序一句一句执行下去 顺序结构是最简单的算法结构

包机制

导入包:import com.tai.base.Demo01;

导入该包下所有的类:import com.tai.base.*;

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值