2 Java输入输出——Java 修炼等级测评

一、代码演示

        这段代码是《Java 核心技术》中的一个经典输入示例。我们通过 Scanner 类与用户进行互动,让 Java 程序不仅能输出,还能接收用户的输入,好比游戏里的 NPC 问玩家问题一样。

import java.util.Scanner;public class InputTest3_2 {public static void main(String[] args) {Scanner scanner = new Scanner(System.in); // 创建 Scanner 对象System.out.println("你叫什么名字?");String name = scanner.nextLine(); // 读取用户输入的名字System.out.println("你的Java修炼到什么级别了?");int level = scanner.nextInt(); // 读取用户输入的级别(整数)System.out.println(name + ":" + level + "级");}
}

二、代码讲解

1. import java.util.Scanner
  • 引入 Scanner 类:就像招募了一位能够与用户对话的助手,让程序能够接受用户输入。
2. Scanner scanner = new Scanner(System.in)
  • 创建 Scanner 对象scanner 是我们用来读取用户输入的工具。System.in 表示从控制台输入数据。
  • 小贴士:如果你不写 Scanner,程序只能一直说,不能听。这有点像一个不会停嘴的主播,完全不给你说话的机会。
3. nextLine() 和 nextInt() 方法
  • nextLine():读取用户输入的一整行字符串。比如你输入 "小明" 或 "Java 小白",都可以完整接收。
  • nextInt():读取用户输入的整数。你输入 "1"、"99" 都可以,但是如果你输入 "一级菜鸟" 这种文字,它就会报错。
4. System.out.println(name + ":" + level + "级")
  • 最后这行输出用户的名字和修炼等级,比如输入 "小明" 和 "5",就会输出:

小明:5级

三、运行效果 

你叫什么名字? (

你输入)Java 小白

你的Java修炼到什么级别了? (

你输入)1 Java 小白:1级

问题引入:

        如果输入了非整数,比如 "一级",会报错 InputMismatchException。所以在下个版本里,我们可能要考虑如何处理异常输入哦! 

四、总结

        这段代码让我们的程序从 "单向输出" 升级为 "双向互动"。就像你打开了聊天室,终于能和用户聊上几句了。学会使用 Scanner 之后,你可以设计更多有趣的交互问答,比如让用户输入年龄、职业、梦想等。

        是不是感觉很有意思呢?下一步,我们可以尝试加入一些错误处理,让你的程序更加稳健,体验升级!


        欢迎来到《Java 核心技术之风趣解读》专栏!

        朋友们你们好,我是Theodore,这个专栏将会带你以轻松有趣的方式学习《Java 核心技术》这本书中的各种经典案例。每篇文章都会将枯燥的代码变得生动形象,穿插一些编程小故事、段子和贴心的解释,让你在欢乐中掌握 Java 编程的精髓。

        不论你是刚接触 Java 的小白,还是希望巩固基础的老手,在这里你都会收获到干货和乐趣。希望你们能够在每篇文章中,不仅学到知识,还能收获一份编程的快乐。

免责声明

本专栏中的所有案例代码和讲解均来源于《Java 核心技术》一书,并经过幽默化加工,仅用于学习和分享,旨在帮助大家更好地理解 Java 编程。

  1. 非商业用途:所有内容仅供学习和参考,未经允许不得用于商业用途。
  2. 代码解释:由于风趣讲解涉及到一些轻松幽默的比喻,可能会夸张化或调侃部分编程术语,请以实际代码为准。
  3. 风险提示:编程是一项严谨的工作,请勿轻易在生产环境中直接使用未经测试的代码。博主会尽力确保代码的正确性,但不对因使用本专栏代码引起的任何问题负责。
  4. 版权声明:本专栏内容部分引用《Java 核心技术》的案例,相关版权归原书作者所有。本专栏的幽默化讲解和额外内容为原创部分,转载请注明出处。

最后,希望大家在学习的过程中开开心心,不断进步!有任何问题,欢迎在评论区留言讨论。让我们一起在 Java 世界里畅游吧!

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

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

相关文章

秒级响应与低成本实现!TDengine 助力多元量化交易系统的背后故事 | 征文

小T导读:在不久前的“2024,我想和 TDengine 谈谈”征文活动中,我们收到了许多精彩的投稿,反映了用户与 TDengine 之间的真实故事和独特见解。今天,我们很高兴地分享此次活动的第一名作品。这篇文章详细阐述了广西多元量…

【nginx】client timed out和send_timeout的大小设置

websocket连接会断开,抓包检查后发现是中间的代理服务器nginx断开的,同时将后端和浏览器都断开了。将nginx日志调到debug级别后,有下面的断开信息。 [info] 125923#125923: *34 client timed out (110: Connection timed out) while proxyin…

什么是RAG? LangChain的RAG实践!

1. 什么是RAG RAG的概念最先在2020年由Facebook的研究人员在论文《Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks》中提出来。在这篇论文中他们提出了两种记忆类型: 基于预训练模型(当时LLM的概念不像现在这么如日中天&#xff0…

A027-基于Spring Boot的农事管理系统

🙊作者简介:在校研究生,拥有计算机专业的研究生开发团队,分享技术代码帮助学生学习,独立完成自己的网站项目。 代码可以查看文章末尾⬇️联系方式获取,记得注明来意哦~🌹 赠送计算机毕业设计600…

13. 基于yolov8苹果叶片病害识别系统(含UI界、Python代码、训练好的模型、数据集)

项目介绍 项目中所用到的算法模型和数据集等信息如下: 算法模型:     yolov8、yolov8 SE注意力机制 或 yolov5、yolov5 SE注意力机制 , 直接提供最少两个训练好的模型。模型十分重要,因为有些同学的电脑没有 GPU&#xff0…

【python爬虫--爬取电商商品及对其销量、好差评等数据进行分析】Python爬虫爬取电商商品及大数据分析-实战

Python爬虫爬取电商商品及大数据分析 目标概述1. 安装依赖2. 爬取京东和淘宝商品信息2.1 京东爬虫2.2 淘宝爬虫 3. 数据清洗与对齐4. 数据分析5. 注意事项6. 免责声明 目标概述 选择目标电商网站:这里选择爬取两个不同电商网站(比如京东、淘宝&#xff…

【蓝桥等考C++真题】蓝桥杯等级考试C++组第13级L13真题原题(含答案)-奇数序列排序

C L13 奇数序列排序 给定一个长度为N的正整数序列, 请将其中的所有奇数取出,并按增序(从小到大)输出。 输入: 共2行 第1行是一个正整数 N(不大于500); 第2行有 N 个正整数&#x…

新的服务器Centos7.6 安装基础的环境配置(新服务器可直接粘贴使用配置)

常见的基础服务器配置之Centos命令 正常来说都是安装一个docker基本上很多问题都可以解决了,我基本上都是通过docker去管理一些容器如:mysql、redis、mongoDB等之类的镜像,还有一些中间件如kafka。下面就安装一个 docker 和 nginx 的相关配置…

英语中常见连词的介绍和比较

连词分为两大类:并列连词(Coordinating Conjunctions)和从属连词(Subordinating Conjunctions)。 1. 并列连词(Coordinating Conjunctions) 并列连词用于连接同等重要的词、短语或句子。常见的…

Three.js性能优化和实践建议

Three.js 是一个功能强大的 3D 引擎,当场景足够大的时候,就会出现卡顿的现象,首先要保证电脑的性能够用,然后看看下面方法,帮助你提高应用的运行效率。 1. 使用 stats.js 监视性能 在进行任何优化之前,首…

vue3字符串转整数

vue3字符串转整数 思路方法代码实现示例 思路方法 在 Vue 3(或任何 JavaScript 环境)中,将字符串转换为整数可以使用 JavaScript 的内置函数 parseInt()。这个函数可以将一个字符串解析为指定基数的整数。如果不指定基数,默认情况…

ima.copilot-腾讯智能工作台

一、产品描述 ima.copilot是腾讯推出的基于腾讯混元大模型技术的智能工作台,通过先进的人工智能技术,为用户提供了一个全新的搜读写体验,让知识管理变得更加智能和高效。它不仅是一个工具,更是一个智能的伙伴,能够帮助…

Jdbc学习笔记(二)核心API--ResultSet

ResultSet之滚动结果集 ResultSet默认只能往下移 ResultSet表示结果集,它是一个二维的表格!ResultSet内部维护一个行光标(游标),ResultSet提供了一系列的方法来移动游标: void beforeFirst():…

CSS Modules在框架中的使用

CSS Modules 是一种与框架无关的技术,然而不同的前端框架(如 React、Vue、Angular)对它的使用方式会有所不同。下面分别讲解如何在这几个框架中使用 CSS Modules。 1. React 中使用 CSS Modules React 是 CSS Modules 最常用的框架之一&…

RPA 机器人流程自动化

RPA(机器人流程自动化)机器人的部署通常包括以下几个主要步骤: 1. 准备工作 环境准备:确定机器人的运行环境,通常需要服务器或虚拟机,安装 RPA 软件(如 UiPath、Automation Anywhere、Blue …

深入解析TOML、XML、YAML和JSON:优劣对比与场景应用

摘要:本文将介绍四种常见的配置文件和数据交换格式:TOML、XML、YAML和JSON,通过具体的使用例子分析它们的优缺点,并探讨在不同场景下的应用选择。 正文: 一、TOML 优点: 易于阅读和编写:TOML的…

【服务器】本地安装X11 服务器-Windows

【服务器】本地安装X11 服务器-Windows X11 服务器概述X Window System 简介 本地安装X11 服务器另:采用 MobaXterm (自带 X server) 连接远程服务器简单说明流程: 参考 X11 服务器概述 X11 服务器 是 X Window System(简称 X11 或 X&#x…

Spring Boot 启动时自动配置 RabbitMQ 交换机、队列和绑定关系

在使用 Spring Boot 开发消息队列应用时,我们经常需要在应用启动时自动创建 RabbitMQ 的交换机、队列和绑定关系。本文将介绍如何通过 Spring Boot 的启动后执行方法来实现这一功能,并提供相应的演示代码和依赖配置。 一、添加依赖 为了在 Spring Boot…

【机器学习】机器学习中用到的高等数学知识-3.微积分 (Calculus)

3. 微积分 (Calculus) 导数和梯度:用于优化算法(如梯度下降)中计算损失函数的最小值。偏导数:在多变量函数中优化目标函数。链式法则:在反向传播算法中用于计算神经网络的梯度。 导数和梯度:用于优化算法…

Java 网络通信之 Socket 编程全解析

在当今数字化时代,网络通信已经成为各种应用程序不可或缺的一部分。Java 作为一种广泛应用的编程语言,提供了强大的网络编程能力,其中 Socket 编程是实现网络通信的重要手段。本文将详细介绍如何使用 Java 进行网络通信,重点聚焦于…