当前位置: 首页 > news >正文

Java流程控制01:用户交互Scanner

本节教学视频链接:https://www.bilibili.com/video/BV12J41137hu?p=33&vd_source=b5775c3a4ea16a5306db9c7c1c1486b5icon-default.png?t=N7T8https://www.bilibili.com/video/BV12J41137hu?p=33&vd_source=b5775c3a4ea16a5306db9c7c1c1486b5

Scanner 类用于扫描输入文本从字符串中提取数据,包括整数、浮点数、布尔值等。

以下是一些常用的方法:

  1. next():获取下一个标记(使用默认的空白字符集)。

  2. nextLine():获取下一行文本。

  3. nextInt():获取下一个整数。

  4. nextDouble():获取下一个双精度浮点数。

  5. nextBoolean():获取下一个布尔值。

  6. hasNext():如果有另一个标记,则返回 true。

  7. hasNextInt():如果下一个标记是一个整数,则返回 true。

  8. hasNextDouble():如果下一个标记是一个双精度浮点数,则返回 true。

  9. hasNextBoolean():如果下一个标记是一个布尔值,则返回 true。

代码示例1:

import java.util.Scanner;public class ScannerExample {public static void main(String[] args) {Scanner scanner = new Scanner(System.in); // 从标准输入接收数据System.out.println("请输入一行文本:");String line = scanner.nextLine(); //获取数据时程序会停住,等待数据输入System.out.println("输入的文本是:" + line);System.out.println("请输入一个整数:");int intValue = scanner.nextInt();System.out.println("输入的整数是:" + intValue);System.out.println("请输入一个双精度浮点数:");double doubleValue = scanner.nextDouble();System.out.println("输入的双精度浮点数是:" + doubleValue);System.out.println("请输入一个布尔值:");boolean booleanValue = scanner.nextBoolean();System.out.println("输入的布尔值是:" + booleanValue);scanner.close();}
}

        在实际应用中,你可以根据需要选择合适的方法来读取数据。记得在完成操作后关闭 Scanner 对象以释放资源。

代码示例2

配合if语句使用

import java.util.Scanner;public class Demo01 {public static void main(String[] args){Scanner scanner = new Scanner(System.in);//从键盘接收数据int i;float f;System.out.println("请输入整数");//如果。。。那么。。。if(scanner.hasNextInt()){i = scanner.nextInt();System.out.println("整数数据" + i);}else{System.out.println("您输入的不是整数数据");}System.out.println("请输入小数");if(scanner.hasNextFloat()){f = scanner.nextFloat();System.out.println("小数数据" + f);}else{System.out.println("您输入的不是小数数据");}scanner.close();}
}

代码示例3

配合while使用

import java.util.Scanner;public class Demo02 {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);double sum = 0;int m = 0;System.out.println("请输入数据");while (scanner.hasNextDouble()){System.out.println("请输入数据");double x = scanner.nextDouble();m++; //m = m + 1;sum = sum +x;}System.out.println(m + "个数的和是" + sum);System.out.println(m + "个数的平均值" + sum/m);scanner.close();}
}

相关文章:

Java流程控制01:用户交互Scanner

本节教学视频链接:https://www.bilibili.com/video/BV12J41137hu?p33&vd_sourceb5775c3a4ea16a5306db9c7c1c1486b5https://www.bilibili.com/video/BV12J41137hu?p33&vd_sourceb5775c3a4ea16a5306db9c7c1c1486b5 Scanner 类用于扫描输入文本从字符串中提…...

什么是回滚

回滚(Rollback)是指当程序或数据出现错误时,将程序或数据恢复到最近一个正确版本或上一次正确状态的行为。回滚机制在软件开发、数据库管理、系统部署等多个领域都有广泛应用,旨在保证系统的稳定性和数据的完整性。以下是关于回滚…...

Java项目通过IDEA远程debug调试

前言 在我们真实项目开发过程中,又是经常会发现一种问题,就是我们在开发环境功能是正常的,在测试环境可能也不太容易发现问题。 结果到了生产环境,由于数据量大,且数据类型变多后,就产生了一些比较难复现…...

Python 绘图入门

数据可视化的概念及意义 数据可视化有着久远的历史,最早可以追溯至10世纪,至今已经应用和发展了数百年。不知名的天文学家是已知的最早尝试以图形方式显示全年当中太阳,月亮和行星的位置变化的图。 图1 数据可视化的发展历程 什么是数据可视…...

RK3568平台(背光篇)背光驱动代码分析

一.背光驱动设备树DTS backlight: backlight {compatible "pwm-backlight";pwms <&pwm1 0 5555555 1>;brightness-levels <77 77 78 78 79 79 80 8182 83 84 85 86 87 87 8888 89 90 90 91 91 92 9394 94 95 95 96 96 9…...

华为od统一考试B卷【比赛】python实现

def split_params(param_str): return list(map(int, param_str.split(,))) def main(): # 获取输入 target_str input().strip() # 输入验证&#xff0c;拆分并转换为整数 try: m, n split_params(target_str) except ValueError: print(-1) return # 检查 M 和 …...

Prometheus 监控接入规范

目录 一、目的 二、自定义监控指标定义规范 2.1 基本命名规范 2.1.1 指标命名规范 2.1.2 标签名称 2.2 控制基数 2.2.1 避免高基数标签 2.2.2 预定义标签集 2.2.3 动态数据的处理 2.2.4 评估与监控基数 2.2.5 降低历史数据的保留 2.2.6 适当使用 Histogram 和 Summa…...

优化 SQL 查询性能:深入理解 EXPLAIN 命令

优化 SQL 查询性能:深入理解 EXPLAIN 命令 在 MySQL 数据库管理中,优化 SQL 查询性能是确保高效数据处理的关键。EXPLAIN 命令是分析和优化 SQL 查询的强大工具,它帮助我们理解查询执行计划,从而找到性能瓶颈并进行优化。本文将详细解释 EXPLAIN 命令返回的各个列的含义,…...

@Mapper报红

检查pom.xml&#xff0c;导入 org.mybatis.spring.boot 依赖&#xff1a; <dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>3.0.3</version></dependency…...

shell综合小实验1-----查看系统硬件信息

echo命令的使用 1&#xff1a;echo -n 不换行 echo -n “我是个大聪明” #不换行输入我是大聪明 2&#xff1a;echo -e 开启颜色 echo -e "\03335m我是大聪明\033[0m" #用35m这种颜色输出我是大聪明然后关闭颜色显示&#xff0c; 30多是字体颜色&#xff0c;40多是…...

【过程管理】项目需求管理规程(Word原件)

在软件开发的过程中&#xff0c;开发人员与用户之间往往忽视有效的信息沟通&#xff0c;这常常导致开发出的软件无法满足用户的实际需求&#xff0c;进而引发不必要的返工。返工不仅为开发人员带来技术上的困扰&#xff0c;增加了人力和物力的消耗&#xff0c;还会对软件的整体…...

C# 不使用 `async` 和 `await` 的常见场景

虽然 async 和 await 是强大的异步编程工具&#xff0c;但在某些情况下&#xff0c;不使用它们可能更合适。以下是一些不使用 async 和 await 的常见场景&#xff1a; 方法是完全同步的&#xff1a; 如果方法中的所有操作都是同步的&#xff0c;并且没有异步调用&#xff0c;则…...

adb目录笔记《adb更新、进入开发者模式,adb查询packages、adb开启应用,查询进程、强制删除进程》

1.sideload模式 在需要安卓没有root权限的时候&#xff0c;可以使用adb reboot sideload命令进入sideload模式&#xff0c;之后运行对应文件 adb reboot sideload adb sideload <root.zip> 2.packages包查询、运行、删除 在需要查看安卓中packages包的名称时&#xf…...

VS2022 C++ EasyX EGE 吃豆人升级版

我是可爱的C小盆友&#xff08;不要脸了&#xff09;&#xff0c;嘻嘻&#xff0c;等了这么久&#xff0c;吃豆人终于升级啦&#xff01; 更新日志&#xff1a; 1.修复奇奇怪怪的bug 2.把敌人AI增强了一&#xff08;hen&#xff09;点&#xff08;duo&#xff09; 3.加入了…...

计算机图形学 | 动画模拟

动画模拟 布料模拟 质点弹簧系统&#xff1a; 红色部分很弱地阻挡对折 Steep connection FEM:有限元方法 粒子系统 粒子系统本质上就是在定义个体和群体的关系。 动画帧率 VR游戏要不晕需要达到90fps Forward Kinematics Inverse Kinematics 只告诉末端p点&#xff0c;中间…...

B2.3 Arm 内存模型定义

B2.3 Arm 内存模型定义 Arm 内存模型引入了以下几种关系: 内在关系 :例如,内在数据/控制/顺序依赖关系和内在翻译之前的关系,这些是源自指令语义的硬件要求。 之后关系 :例如,之后的连贯性和 TLB 之后的关系,这些关系在特定执行中发生这种方式,但在不同的执行中可以以…...

(javaweb)SpringBootWeb案例(毕业设计)案例--部门管理

目录 1.准备工作 2.部门管理--查询功能 3.前后端联调 3.部门管理--新增功能 1.准备工作 mapper数据访问层相当于dao层 根据页面原型和需求分析出接口文档--前后端必须遵循这种规范 大部分情况下 接口文档由后端人员来编写 前后端进行交互基于restful风格接口 http的请求方式…...

PCL 采样一致性模型介绍

采样一致性可以简单高效的检测出一些具有数学表达式的目标模型。PCL中的sample consensus模块中不仅包含各种的采样一致性估计方法,也包含一些已经编写好的数学模型,下面主要介绍一下PCL中的采样一致性模型。 1. 二维圆模型 pcl::SampleConsensusModelCircle2D< PointT …...

Unity手游开放大世界解决方案

开个新坑了&#xff0c;分享一个手游开放大世界的解决方案&#xff0c;也算是我开发研究了一年多的结果吧。之前项目需要&#xff0c;做了一整套的手游开放大世界解决方案&#xff0c;这里做一个总结归纳&#xff0c;将所需要的技术栈和解决方案等汇总。 这篇文章只是起头一个目…...

mysql B+ 树

问题&#xff1a; mysql innodb引擎 B树主键自增&#xff0c;插入数据时是从中间分裂&#xff0c;还是使用页尾部元素作为父节点的值然后添加一个新页&#xff0c;或者说主键连续自增&#xff0c;mysql有没有做这样的优化&#xff1f; 以下是Chat GPT给出的回答&#xff1a;...

深入剖析AI大模型:大模型时代的 Prompt 工程全解析

今天聊的内容&#xff0c;我认为是AI开发里面非常重要的内容。它在AI开发里无处不在&#xff0c;当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗"&#xff0c;或者让翻译模型 "将这段合同翻译成商务日语" 时&#xff0c;输入的这句话就是 Prompt。…...

IoT/HCIP实验-3/LiteOS操作系统内核实验(任务、内存、信号量、CMSIS..)

文章目录 概述HelloWorld 工程C/C配置编译器主配置Makefile脚本烧录器主配置运行结果程序调用栈 任务管理实验实验结果osal 系统适配层osal_task_create 其他实验实验源码内存管理实验互斥锁实验信号量实验 CMISIS接口实验还是得JlINKCMSIS 简介LiteOS->CMSIS任务间消息交互…...

大数据学习(132)-HIve数据分析

​​​​&#x1f34b;&#x1f34b;大数据学习&#x1f34b;&#x1f34b; &#x1f525;系列专栏&#xff1a; &#x1f451;哲学语录: 用力所能及&#xff0c;改变世界。 &#x1f496;如果觉得博主的文章还不错的话&#xff0c;请点赞&#x1f44d;收藏⭐️留言&#x1f4…...

Java数值运算常见陷阱与规避方法

整数除法中的舍入问题 问题现象 当开发者预期进行浮点除法却误用整数除法时,会出现小数部分被截断的情况。典型错误模式如下: void process(int value) {double half = value / 2; // 整数除法导致截断// 使用half变量 }此时...

【C++特殊工具与技术】优化内存分配(一):C++中的内存分配

目录 一、C 内存的基本概念​ 1.1 内存的物理与逻辑结构​ 1.2 C 程序的内存区域划分​ 二、栈内存分配​ 2.1 栈内存的特点​ 2.2 栈内存分配示例​ 三、堆内存分配​ 3.1 new和delete操作符​ 4.2 内存泄漏与悬空指针问题​ 4.3 new和delete的重载​ 四、智能指针…...

打手机检测算法AI智能分析网关V4守护公共/工业/医疗等多场景安全应用

一、方案背景​ 在现代生产与生活场景中&#xff0c;如工厂高危作业区、医院手术室、公共场景等&#xff0c;人员违规打手机的行为潜藏着巨大风险。传统依靠人工巡查的监管方式&#xff0c;存在效率低、覆盖面不足、判断主观性强等问题&#xff0c;难以满足对人员打手机行为精…...

手机平板能效生态设计指令EU 2023/1670标准解读

手机平板能效生态设计指令EU 2023/1670标准解读 以下是针对欧盟《手机和平板电脑生态设计法规》(EU) 2023/1670 的核心解读&#xff0c;综合法规核心要求、最新修正及企业合规要点&#xff1a; 一、法规背景与目标 生效与强制时间 发布于2023年8月31日&#xff08;OJ公报&…...

libfmt: 现代C++的格式化工具库介绍与酷炫功能

libfmt: 现代C的格式化工具库介绍与酷炫功能 libfmt 是一个开源的C格式化库&#xff0c;提供了高效、安全的文本格式化功能&#xff0c;是C20中引入的std::format的基础实现。它比传统的printf和iostream更安全、更灵活、性能更好。 基本介绍 主要特点 类型安全&#xff1a…...

从实验室到产业:IndexTTS 在六大核心场景的落地实践

一、内容创作&#xff1a;重构数字内容生产范式 在短视频创作领域&#xff0c;IndexTTS 的语音克隆技术彻底改变了配音流程。B 站 UP 主通过 5 秒参考音频即可克隆出郭老师音色&#xff0c;生成的 “各位吴彦祖们大家好” 语音相似度达 97%&#xff0c;单条视频播放量突破百万…...

在Zenodo下载文件 用到googlecolab googledrive

方法&#xff1a;Figshare/Zenodo上的数据/文件下载不下来&#xff1f;尝试利用Google Colab &#xff1a;https://zhuanlan.zhihu.com/p/1898503078782674027 参考&#xff1a; 通过Colab&谷歌云下载Figshare数据&#xff0c;超级实用&#xff01;&#xff01;&#xff0…...