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

(十三)if-else if-else 多分支判断、double 小数类型、三向分段函数(x>0、x=0、x<0)练习题

package dey5; import java.util.Scanner; public class Test08 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入x"); double x = sc.nextDouble(); double y; if (x > 0) { y = 1; } else if (x == 0) { y = 0; } else { // 这里必须带 { } y = -1; } System.out.println("y = " + y); sc.close(); } }

严格按照你指定的格式、排版、语气,逐行、逐词、逐符号拆解,一模一样,你直接复制做笔记即可。

package dey5;

package:打包、归类

dey5:包名(代码文件夹)

;:结束

知识点:package 包声明语句核心:Java 代码必须声明所在包。

大白话:我这个代码放在 dey5 文件夹里。

举例:就像把作业放进 “数学” 文件夹里。

import java.util.Scanner;

import:导入、拿来用

java.util:Java 自带工具库

Scanner:键盘输入工具

;:结束

知识点:import 导入语句、Scanner 键盘输入类核心:想用键盘输入,必须先导入。

大白话:我要用到键盘输入功能,先把工具借来。

举例:就像你要写字,先拿一支笔。

public class Test08 {

public:公开的

class:类、代码容器

Test08:类名

{:代码块开始

知识点:类的定义格式核心:所有 Java 代码必须写在类里。

大白话:建一个公开代码盒子,名字叫 Test08。

举例:就像打开一个文件袋准备装内容。

public static void main(String[] args) {

public:公开

static:静态

void:无返回值

main:程序入口

String []:字符串数组

args:参数名

(:参数开始

):参数结束

{:方法开始

知识点:main 主方法,程序唯一入口核心:运行程序一定从这行开始。

大白话:程序启动的总开关,从这里开始跑。

Scanner sc = new Scanner(System.in);

Scanner:输入工具类型

sc:工具名字

=:赋值

new:新建

System.in:键盘输入

(:括号开始

):括号结束

;:结束

知识点:创建 Scanner 输入对象核心:固定写法,用来接收键盘输入。

大白话:造一个键盘输入工具,叫 sc。

举例:就像把笔准备好,随时可以写。

System.out.println("请输入x");

System:系统类

out:输出

println:打印并换行"请输入 x":输出内容

(:括号

):括号

;:结束

知识点:控制台输出语句核心:在屏幕上显示文字。

大白话:屏幕提示 “请输入 x”。

举例:就像老师说:请输入数字。

double x = sc.nextDouble();

double:小数类型

x:变量名

=:赋值

sc:输入工具

nextDouble:读取小数

(:括号

):括号

;:结束

知识点:double 小数类型、读取小数核心:用来存和输入带小数点的数字。

大白话:读取你输入的小数,存到 x 里。

举例:输入 3.5 → x=3.5。

double y;

double:小数类型

y:变量名;:结束

知识点:声明 double 变量 y核心:先定义 y,后面再赋值。

大白话:准备一个叫 y 的盒子,用来存结果。

举例:就像先拿个空盒子,等下放东西。

if (x > 0) {

if:如果

(:条件开始

x:变量

>0:大于0

):条件结束

{:代码块开始

知识点:if 条件判断、大于比较符核心:判断 x 是否大于 0。

大白话:如果 x 是正数,就执行这里。

举例:x=5 → 满足;x=-2 → 不满足。

y = 1;

y:变量

=:赋值

1:数值 1

;:结束

知识点:变量赋值核心:满足条件就给 y 赋值 1。

大白话:x 是正数,y 就等于 1。

举例:x=2.3 → y=1。

} else if (x == 0) {

}:上一个 if 结束

else:否则

if:如果

(:条件

x:变量

==:判断相等于0

):条件结束

{:代码块开始

知识点:else if 多条件判断、== 相等判断核心:前面不满足,再判断这个条件。

大白话:如果 x 不大于 0,再看是不是等于 0。

举例:x=0 → 满足。

y = 0;

y:变量

=:赋值

0:数值 0

;:结束

知识点:变量赋值

大白话:x 等于 0,y 就等于 0。

举例:x=0 → y=0。

} else {

}:上一个 else if 结束

else:否则

{:代码块开始

知识点:else 最终分支核心:前面所有条件都不满足,执行这里。

大白话:x 既不是正数也不是 0,那就是负数。

举例:x=-3.1 → 走这里。

y = -1;

y:变量

=:赋值

-:负号

1:数值 1

;:结束

知识点:负数赋值

大白话:x 是负数,y 等于 - 1。

举例:x=-5 → y=-1。

}

}:整个 if-else if-else 结束

知识点:条件语句闭合

大白话:所有判断结束。

System.out.println("y = " + y);

System:系统

out:输出

println:打印

"y =":字符串

+:拼接

y:变量

(:括号

):括号

;:结束

知识点:输出拼接、打印变量核心:把文字和变量一起输出。

大白话:输出最终结果 y 等于多少。

举例:y=1 → 输出 y = 1。

sc.close();

sc:输入工具

close:关闭

(:括号

):括号

;:结束

知识点:关闭输入流核心:用完工具关闭,节省资源。

大白话:输入结束,关掉工具。

举例:用完笔,盖好笔帽。

}

}:main 方法结束

知识点:方法闭合

大白话:主程序跑完了。

}

}:类结束

知识点:类闭合大白话:整个代码全部结束。

这整段代码、我刚才逐行拆解的全部内容,精炼总结所有知识点(分基础 + 核心重点)

本代码全部知识点总结

  1. 包语句 package声明代码所在文件夹,Java 代码固定开头格式。

  2. import 导入 + Scanner 键盘输入导入键盘输入工具,创建输入对象,实现从控制台输入数据。

  3. double 浮点型数据类型可以存储带小数点的小数,区别于整数int,用来定义变量xy

  4. sc.nextDouble()读取键盘输入的小数,并赋值给变量。

  5. 变量先声明后赋值先定义double y;空变量,后续通过条件判断再给y赋具体值。

  6. 比较运算符>大于、==判断相等重点区分:=是赋值,==是判断两边是否相等。

  7. if - else if - else 多分支完整结构(本课核心)依次判断多个条件,满足哪个执行哪个;前面条件全都不成立,最后else兜底执行。本题经典分段函数

  • x>0正数 →y=1
  • x=0y=0
  • 剩余所有情况(x<0负数) →y=-1
  1. 输出语句字符串与变量拼接 + 号"y = " + y实现文字和计算结果一起打印输出。

  2. sc.close()关闭键盘输入工具,释放资源,程序规范收尾。

http://www.jsqmd.com/news/692878/

相关文章:

  • 泉州客多旧货回收:南安不锈钢回收电话多少 - LYL仔仔
  • 【最新评测】GPT Image 2 震撼发布:从「玩具」到「生产力」的跨越
  • 某医保服务平台X-Tingyun、x-tif-signature、x-tif-nonce及encData、signData参数逆向实战
  • 终极指南:3分钟掌握KH Coder开源文本挖掘工具
  • PX4与ROS2联调实战:用VSCode在Gazebo中跑通第一个无人机控制节点
  • 3分钟搭建专业缠论分析系统:基于TradingView本地SDK的终极量化可视化方案
  • 3种方法在Windows电脑上高效安装安卓应用:APK安装器全攻略
  • C++26 Contracts实战入门:从编译失败到生产就绪的7个关键检查清单
  • 为你的索尼相机重新定义可能性:OpenMemories-Tweak 功能定制指南
  • Python智能体建模终极指南:5步快速掌握Mesa框架
  • 告别手册恐惧症:手把手教你用STM32CubeMX驱动W25Q16 Flash(附完整代码)
  • 国际象棋AI开发:从走法生成到Alpha-Beta剪枝
  • 2026 港口码头监管低空平台推荐,冰柏科技助力集装箱码头智能管控 - 品牌2026
  • 从嵌入式到IC设计:用Verilog手把手教你实现一个可配置的UART收发器(含Testbench)
  • 从Heartbleed到2026年新爆Zero-Day:C语言内存安全演进时间轴(含17个关键节点技术决策树与迁移路线图)
  • VSCode日志可视化革命(Log Viewer Pro深度解析):支持结构化JSON、正则高亮与时间轴联动的行业新标准
  • React与Alan AI构建智能语音待办事项应用
  • 闲置沃尔玛电子卡别浪费!2026回收新思路实测,两大实用方法对决更省心 - 京回收小程序
  • 手把手教你用STM32F103实现UDS Bootloader:从内存分配到CAN刷写全流程(附避坑指南)
  • LeRobot:5步构建端到端机器人AI系统的完整实战指南
  • 涂层锅 vs 无涂层锅:PTFE、陶瓷、窒化、珐琅四种路线选型与防坑指南
  • 深入解析ICO文件结构:从掩码图到色彩打印的完整处理流程
  • WinSpy++终极指南:5个高效调试Windows窗口的专业技巧
  • 避坑指南:STM32外部中断控制LED时,你的按键消抖真的做对了吗?
  • 如何在Windows 11中恢复任务栏拖放功能:完整指南与最佳实践
  • 从无人机飞控到机械臂:手把手教你用C++实现RPY角与旋转矩阵互转(附Eigen库实战)
  • 2026压电驱动器行业发展现状与领军企业推荐 - 深度智识库
  • Spring AI MCP 实战:让大模型调用你的 Java 业务接口
  • 从鉴权需求出发:为什么我放弃了Tinyproxy 1.8.3,选择了1.11.1?版本选择与配置实战
  • DeepSeek-Coder-V2实战指南:打破闭源模型壁垒的5大应用场景