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();}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/399804.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Bug 解决 | 组件库报错、或样式丢失不生效

目录 一、前言 二、版本问题 1、使用 VantUI 的 toast 组件报错? 2、引入 VantUI 组件库后,toast 组件样式丢失了? 3、使用 Ant Design Vue 组件库,启动后显示 antd.css 不存在? 4、Vant UI 组件库引入的 tabs 组…

数据中心安全建设整体解决方案(DOC原件22页)

数据中心的安全体系建设并非安全产品的堆砌,它是一个根据用户具体业务环境、使用习惯、安全策略要求等多个方面构建的一套生态体系,涉及众多的安全技术,实施过程需要涉及大量的调研、咨询等工作,还会涉及到众多的安全厂家之间的协…

LangChain 推出 LangGraph Studio:首款用于可视化、交互和调试复杂代理应用的代理 IDE

嘿,听说了吗?Langchain最近发布了一项重大更新,他们推出了官方Agent IDE,并且免费开放了LangGraph平台。这对于AI开发者来说是个好消息,意味着我们现在有了更强大的工具来构建智能应用。 今天,我们就来分享…

编译自定义Linux内核,使WSL支持访问Windows下USB设备

版权归作者所有,如有转发,请注明文章出处:https://cyrus-studio.github.io/blog/ WSL 本身并不支持连接 USB 设备,因此你需要安装开源 usbipd-win 项目。 usbip 可以让你在网络上共享和使用 USB 设备。它由两个主要组件组成&…

一个Indie Hacker的微SaaS技术栈

如今,可用的技术非常多,我们每个月都会看到各种新的 JS 框架发布,有时,如果你一开始没有选择正确的技术堆栈,以后扩展起来就会很困难。因此,在今天的文章中,我将与你分享我用于开发微型 SaaS 的…

分布式存储ceph知识点整理

一、Ceph概述 如何选择存储 底层协议兼容性产品要有定位,功能有所取舍针对特定市场的应用存储被市场认可的存储系统 稳定性是第一位的性能第二数据功能要够用 一)存储分类 1、本地存储 本地的文件系统,不能在网络上用。 如:ext3、…

Python图像背景去除

目录 🎁库的导入 🎀库的安装 🎁rembg库去除背景 🎁效果 🎁文末彩蛋 今天来介绍一个特别有趣的python库,rembg库,全称是“Remove Background”的缩写,意为“去除背景”&#xff…

内存泄漏工具valgrind初使用

工具下载&#xff1a; sudo apt install valgrind简单使用流程&#xff1a; 编写源文件编译&#xff08;-g方式&#xff09;valgrind使用memcheck工具运行程序 编写文件&#xff1a; #include <stdlib.h> #include <sys/types.h> #include <unistd.h> #i…

Github 2024-08-12 开源项目日报 Top10

根据Github Trendings的统计,今日(2024-08-12统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目3Java项目2JavaScript项目1TypeScript项目1Vue项目1Clojure项目1Dockerfile项目1HTML项目1C项目1Jupyter Notebook项目1Node.js最佳实…

【秋招笔试】2024-08-07-YT游戏(研发岗)-三语言题解(CPP/Python/Java)

🍭 大家好这里是 春秋招笔试突围,一起备战大厂笔试 💻 ACM金牌团队🏅️ | 多次AK大厂笔试 | 编程一对一辅导 ✨ 本系列打算持续跟新 秋招笔试题 👏 感谢大家的订阅➕ 和 喜欢💗 和 手里的小花花🌸 ✨ 笔试合集传送们 -> 🧷春秋招笔试合集 本次的题目比较典,…

docker的swarm技术

docker中swarm技术 docker swarm技术是docker社区提供的docker的集群管理调度工具&#xff0c;通过api来管理多个主机上的docker&#xff0c;通过overlay网络来实现不同主机之间容器的通信与访问。实现容器的调度&#xff0c;资源的分配&#xff0c;以及副本。 docker swarm中…

Keepalived超详解,里面有你最爱看的Keepalived+LVS与Keepalived+HAProxy

文章目录 VRRPVRRP相关术语VRRP相关技术 keepalived介绍keepalived环境准备keepalived配置说明全局配置虚拟路由器配置开启通信功能启用keepalived日志实现独立子配置文件 keepalived企业应用实例抢占模式和非抢占模式非抢占模式延迟抢占模式 VIP单播模式keepalived通知脚本配置…

JVM知识总结(CMS收集器)

文章收录在网站&#xff1a;http://hardyfish.top/ 文章收录在网站&#xff1a;http://hardyfish.top/ 文章收录在网站&#xff1a;http://hardyfish.top/ 文章收录在网站&#xff1a;http://hardyfish.top/ CMS收集器 CMS&#xff08;Concurrent Mark Sweep&#xff09;收集…

14.3 Matplotlib与Seaborn数据可视化

欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;欢迎订阅相关专栏&#xff1a; 工&#x1f497;重&#x1f497;hao&#x1f497;&#xff1a;野老杂谈 ⭐️ 全网最全IT互联网公司面试宝典&#xff1a;收集整理全网各大IT互联网公司技术、项目、HR面试真题.…

tiktok 搜索接口请求与翻页

这几天有小伙伴问tk的搜索接口的问题, 一个是搜索热门接口请求返回 {“status_code”: 0},这个使用curl_cffi的requests库改一下指纹请求就行了。 再一个就是翻页问题 细心一些比对一下翻页参数都能做到的(小伙伴以为只改个offset就完事了) 要不然你只能得到这样的结果:…

音视频概要

YUV原理的讲解 YUV是一种常见的视频像素格式&#xff0c;经常用在视频编解码上面&#xff0c;YUV分别由Y分量和U、V分量(红色投影Cr)组成。Y分量指的是亮度分量&#xff0c;也就是我们经常说的灰阶值&#xff0c;相当于一副灰色的图像。而U分量和V分量表示的是色度分量&#x…

ThinkPHP5.0.15漏洞解析及SQL注入

第一步&#xff1a; 通过查看5.0.15和5.0.16版本的对比&#xff0c;可以看到16版本对在Builder.php里面对数据库的增减做了修正&#xff0c;所以可以15版本的漏洞就存在在这里。这里的代码用的拼接的方式&#xff0c;就可以尝试使用报错注入来实现。 第二步&#xff1a; 我们…

Selenium + Python 自动化测试09(多窗口切换)

我们的目标是&#xff1a;按照这一套资料学习下来&#xff0c;大家可以独立完成自动化测试的任务。 上一篇我们讨论了截图的操作方法&#xff0c;本篇文章我们讲述一下多窗口切换的操作方法。 在实际的测试项目组中我们可能会遇到多窗口的情况&#xff0c;有时候需要在不同窗口…

代理服务器在HTTP请求中的应用:Ruby实例

摘要 在现代互联网架构中&#xff0c;代理服务器是不可或缺的组件&#xff0c;它提供了访问控制、数据加密、缓存和匿名访问等多种功能。本文将介绍代理服务器的基本概念&#xff0c;并以Ruby编程语言为例&#xff0c;展示如何在HTTP请求中使用代理服务器&#xff0c;包括设置…

TS基础记录

ts配置文件的配置项有很多下面是一些常见的配置&#xff1a; { //这个ts的json可以写注释,用来指令哪些ts文件需要编译,/*任意文件,/**任意目录,./是当前目录 , // ../是父级目录,/是根目录&#xff08;表示一下子回到最顶端的那个文件夹下&#xff09; "include": […