首页 > 编程语言 >Java学习 用户交互 Scanner

Java学习 用户交互 Scanner

时间:2024-03-17 13:22:56浏览次数:18  
标签:Java scanner System println out 交互 输入 Scanner

Scanner 是Java5提供的新特性 可以用来获取用户的输入 需要引入import java.util.Scanner;类
基础语法: Scanner scanner = new Scanner(System.in);
可以通过Scanner类的next()和nextLine()来获取输入的字符串一般在输入前使用 hasnext()和 hasNextLine()用来判断是否有输入的数据
next()与nextLine()区别:
① next():对输入有效字符后的空白next()方法会自动将其去掉 next()不能得到带有空格的字符串
package Scanner; import java.util.Scanner; public class Demo01 { public static void main(String[] args) { // 创建一个对象用户获取输入 Scanner scanner = new Scanner(System.in); System.out.println("获取next"); // 判断有没有输入 if(scanner.hasNext()){ String str =scanner.next(); System.out.println("输入为:"+str); } } }
结果:
输入
hello word
获取输入hello
② nextLine():以回车作为结束符 nextLine()获取的是输入回车符之前的所有字符 可以获得空白
`package Scanner;
import java.util.Scanner;
public class Demo02 {
public static void main(String[] args) {
// 创建类来获取用户输入
Scanner scanner = new Scanner(System.in);
System.out.println("输入");
if(scanner.hasNextLine()){
String str = scanner.nextLine();
System.out.println("获取输入"+str);
}
}

}
`
结果:
输入
hello word
获取输入hello word
另外Scanner 还存在输入hasNextFloat()小数 hasNextInt()整数 hasNextBoolen布尔值等类型

小案例: 输入数据求输入数据的和数求平均值 输入数字以外的数据来结束输入并输入结果
`package Scanner;

import java.util.Scanner;

public class Demo03 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int i =0;
double sum =0;
while(scanner.hasNextDouble()){
double x = scanner.nextDouble();
i = i+1;
sum =sum+x;
System.out.println("你输入了第"+i+"个数据,结果为"+sum);
}
System.out.println("总和为:"+i);
System.out.println("平均值为:"+(sum)/i);
}
}
`
结果为:
10
你输入了第1个数据,结果为10.0
20
你输入了第2个数据,结果为30.0
40
你输入了第3个数据,结果为70.0
z
总和为:3
平均值为:23.333333333333332

小白学习 如有其他意见 希望大家多多提出 谢谢

标签:Java,scanner,System,println,out,交互,输入,Scanner
From: https://www.cnblogs.com/z824L/p/18077190

相关文章

  • 访问JavaWeb项目没有返回任何内容
     一、问题由来一位朋友最近在学习JavaWeb开发时遇到一个问题,某次他在测试,去访问项目下面的html文件时,发现没有任何响应信息。他感觉到很是奇怪,自己尝试着去解决这个问题,一直没有找到问题。二、问题分析我让他把项目发过来看看,把项目启动起来后,在Webapp目录下创建一个......
  • Java 8中 lambda表达式、Stream API的常见用法
    1、取出集合中的某个字段://拿到车辆idsList<Long>carIds=parkCarInDbList.stream().map(ParkCar::getId).collect(Collectors.toList());2、集合直接进行遍历然后进行相关操作:List<Car>cars=carService.getListByCarId(carIds);cars.forEach(car->......
  • java毕设安卓昆虫科普APP实现(开题+源码)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着移动互联网的普及和智能手机的广泛应用,人们的生活方式发生了深刻变革。智能手机APP以其便捷性、交互性和个性化等特点,成为现代人获取信息和知识......
  • java毕设安卓考研院校择选app(开题+源码)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景在数字化快速发展的时代,信息技术的应用已深入到各个领域,教育行业亦不例外。特别是在考研这一重要的人生节点上,学生们面临着院校选择、专业匹配、分数......
  • JAVA 判断与循环
    顺序结构是Java程序默认的执行流程,按照代码的先后顺序,从上到下依次执行。分支结构1.if语句      (1)if(关系表达式){语句体;}     (2)if(关系表达式){语句体1;}          else  {语句体2;}     (3)if(关系表达式1){语句体1;}       ......
  • java毕业设计基于微信小程序的疫情点餐系统
    本系统(程序+源码)带文档lw万字以上  文末可领取本课题的JAVA源码参考系统程序文件列表系统的选题背景和意义在当今社会,随着移动互联网技术的飞速发展和智能手机的普及,微信小程序以其便捷性和高效性成为人们生活中不可或缺的一部分。特别是在新冠疫情的影响下,无接触服务成......
  • java核心技术卷1 第五章:继承
    学习重要的是出,而不是入,此前一直埋头向前学,忽视了复习的重要性。写一个博客作为自己的学习笔记,也可作为以后查漏补缺的资料,温故而知新。类,超类和子类一个继承另一个类,父类也称为超类,基类。"超类"中的超来自于集合理论,指的是父类,与之后的super关键字对应java中,类的继承默认为pu......
  • Java基础 --- 面向对象
    面向对象面向对象介绍介绍面向:拿、找对象:能干活的东西面向对象编程:拿东西过来坐对应的事情设计对象并使用类和对象类(设计图):是对象共同特征的描述;对象:是真实存在的具体东西在Java中,必须先设计类,才能获得对象。如何定义类publicclass类名{1.成员变量(代......
  • 新一代 Kaldi: 支持 JavaScript 进行本地语音识别和语音合成啦!
    简介新一代 Kaldi 部署框架 sherpa-onnx 支持的编程语言 API 大家庭中,最近增加了一个新成员: JavaScript。为了方便大家查看,我们把目前所有支持的编程语言汇总成如下一张图。注:这个家庭还在不断的扩充,总有一款适合你!后续我们会增加 Dart、Rust、WebAssembly 等支持......
  • Java设计模式之模板模式。
    模板模式(TemplatePattern)是Java中常用的设计模式之一,是一种行为设计模式,它定义了一个算法的骨架,将具体步骤延迟到子类中实现。模板模式使得子类可以在不改变算法结构的情况下重新定义算法中的某些步骤,下面通过Java代码看看模板模式的用法。//模板类abstractclassAbstr......