Java 数学运算与条件语句全解析
Java Math
Java 的 Math 类 拥有许多方法,允许您在数字上执行数学任务。
常用方法:
Math.max(x, y)
: 找到 x 和 y 的最大值Math.min(x, y)
: 找到 x 和 y 的最小值Math.sqrt(x)
: 返回 x 的平方根Math.abs(x)
: 返回 x 的绝对值Math.random()
: 返回一个介于 0.0 和 1.0 之间的随机数
示例:
// 找到最大值
int max = Math.max(5, 10);
System.out.println("最大值:" + max); // 输出:10
// 找到最小值
int min = Math.min(5, 10);
System.out.println("最小值:" + min); // 输出:5
// 计算平方根
double sqrt = Math.sqrt(64);
System.out.println("平方根:" + sqrt); // 输出:8.0
// 计算绝对值
double abs = Math.abs(-4.7);
System.out.println("绝对值:" + abs); // 输出:4.7
// 生成随机数
double randomNum = Math.random();
System.out.println("随机数:" + randomNum); // 输出:0.0 到 1.0 之间的随机数
Java 布尔值
布尔类型 使用 boolean
关键字声明,只能取 true
或 false
的值。
示例:
boolean isJavaFun = true;
boolean isFishTasty = false;
System.out.println(isJavaFun); // 输出:true
System.out.println(isFishTasty); // 输出:false
布尔表达式 返回布尔值:true
或 false
。
示例:
int x = 10;
int y = 9;
System.out.println(x > y); // 输出:true
System.out.println(x == 10); // 输出:true
Java If...Else
Java 条件语句:
if
: 在条件为 true 时执行代码块else
: 在条件为 false 时执行代码块else if
: 测试新的条件switch
: 执行多个备选代码块
示例:
int age = 25;
int votingAge = 18;
if (age >= votingAge) {
System.out.println("可以投票");
} else {
System.out.println("不能投票");
}
完整代码:
# Java Math
// 最大值
int max = Math.max(5, 10);
System.out.println("最大值:" + max); // 输出:10
// 最小值
int min = Math.min(5, 10);
System.out.println("最小值:" + min); // 输出:5
// 平方根
double sqrt = Math.sqrt(64);
System.out.println("平方根:" + sqrt); // 输出:8.0
// 绝对值
double abs = Math.abs(-4.7);
System.out.println("绝对值:" + abs); // 输出:4.7
// 随机数
double randomNum = Math.random();
System.out.println("随机数:" + randomNum); // 输出:0.0 到 1.0 之间的随机数
// 布尔类型
boolean isJavaFun = true;
boolean isFishTasty = false;
System.out.println(isJavaFun); // 输出:true
System.out.println(isFishTasty); // 输出:false
// 布尔表达式
int x = 10;
int y = 9;
System.out.println(x > y); // 输出:true
System.out.println(x == 10); // 输出:true
// 条件语句
int age = 25;
int votingAge = 18;
if (age >= votingAge) {
System.out.println("可以投票");
} else {
System.out.println("不能投票");
}
Java 简写 If...Else(三元运算符)
还有一种称为三元运算符的简写 if else
,因为它由三个操作数组成。它可以用来用一行代码替代多行代码,并且最常用于替代简单的 if else
语句。
语法
variable = (condition) ? expressionTrue : expressionFalse;
而不是编写:
int time = 20;
if (time < 18) {
System.out.println("Good day.");
} else {
System.out.println("Good evening.");
}
您可以简单地写:
int time = 20;
String result = (time < 18) ? "Good day." : "Good evening.";
System.out.println(result);
Java Switch 语句
与编写许多 if..else
语句相比,您可以使用 switch
语句。switch
语句选择要执行的多个代码块之一。
语法
switch (expression) {
case x:
// 代码块
break;
case y:
// 代码块
break;
default:
// 代码块
}
它的工作原理如下:
switch
表达式在一次评估中完成。- 表达式的值与每个
case
的值进行比较。 - 如果找到匹配项,则执行相关的代码块。
break
和default
关键字是可选的
下面的示例使用星期几的数字来计算星期几的名称:
int day = 4;
switch (day) {
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
case 3:
System.out.println("星期三");
break;
case 4:
System.out.println("星期四");
break;
case 5:
System.out.println("星期五");
break;
case 6:
System.out.println("星期六");
break;
case 7:
System.out.println("星期天");
break;
}
// 输出 "星期四"(星期 4)
break
关键字
当 Java
到达 break
关键字时,它会跳出 switch
块。这将停止更多代码和块内部的 case
测试的执行。当找到匹配项并完成任务时,到了休息的时候了。没有更多测试的必要。break
可以节省大量的执行时间,因为它“忽略” 了在 switch
块中的所有其余代码的执行。
default
关键字
default
关键字指定如果没有 case
匹配则运行的一些代码:
int day = 4;
switch (day) {
case 6:
System.out.println("今天是星期六");
break;
case 7:
System.out.println("今天是星期天");
break;
default:
System.out.println("期待周末");
}
// 输出 "期待周末"
请注意,如果 default
语句用作 switch
块中的最后一条语句,它就不需要 break
。
最后
为了方便其他设备和平台的小伙伴观看往期文章:
微信公众号搜索:Let us Coding
,关注后即可获取最新文章推送
看完如果觉得有帮助,欢迎 点赞、收藏、关注
Java 数学运算与条件语句全解析的更多相关文章
- var、符号运算、条件语句、三元(目)运算、自加和自减
1.var a=“hello world” a 这个变量是字符串了,对于里面的每一个字母来说,他是字节,里面有11个字节,(包括空格),字节总数用length表示 2.符号运算 + 字符串拼接 . ...
- JavaSE基础(六)--Java流程控制语句之条件语句
Java 条件语句 - if...else 一个 if 语句包含一个布尔表达式和一条或多条语句. 语法 if 语句的语法如下: if(布尔表达式) { //如果布尔表达式为true将执行的语句 } 如 ...
- Yii2.0中文开发向导——Where条件查询全解析
在Yii的Model里进行查询的时候 where是必不可少的.Where方法声明为 static where( $condition ) 其中参数 $condition类型为字符串或者数组 1.字符串 ...
- Java 最常见 200+ 面试题全解析:面试必备
本文分为十九个模块,分别是: Java 基础.容器.多线程.反射.对象拷贝.Java Web .异常.网络.设计模式.Spring/Spring MVC.Spring Boot/Spring Clou ...
- Java 最常见 200+ 面试题 + 全解析
本文分为十九个模块,分别是: Java 基础.容器.多线程.反射.对象拷贝.Java Web .异常.网络.设计模式.Spring/Spring MVC.Spring Boot/Spring Clou ...
- 吴裕雄--天生自然 JAVA开发学习:条件语句
public class Test { public static void main(String args[]){ int x = 10; if( x < 20 ){ System.out. ...
- 【Java集合框架002】原理层面:HashMap全解析
一.前言 二.HashMap 2.1 HashMap数据结构 + HashMap线程不安全 + 哈希冲突 2.1.1 HashMap数据结构 学习的时候,先整体后细节,HashMap整体结构是 底层数 ...
- Java并发原理层面:ReentrantLock中lock()、unlock()全解析
一.前言 Java线程同步两种方式,synchronized关键字和Lock锁机制,其中,AQS队列就是Lock锁实现公平加锁的底层支持. 二.AQS源码对于lock.lock()的实现 2.1 AQ ...
- 【Java并发007】原理层面:ReentrantLock中lock()、unlock()全解析
一.前言 Java线程同步两种方式,synchronized关键字和Lock锁机制,其中,AQS队列就是Lock锁实现公平加锁的底层支持. 二.AQS源码对于lock.lock()的实现 2.1 AQ ...
- Java JVM 内存泄漏--全解析和处理办法 [ 转载 ]
Java JVM 内存泄露——全解析和处理办法 [转载] @author 小筐子 @address http://www.jianshu.com/p/bf159a9c391a JA ...
随机推荐
- ASP.NET Core MVC应用模型的构建[3]: Controller的收集
从编程的角度来看,一个MVC应用是由一系列Controller类型构建而成的,所以对于一个代表应用模型的ApplicationModel对象来说,它的核心就是Controllers属性返回的一组Con ...
- HashMap源码窥探
目录 前言 HashMap的数据结构 HashMap的put方法 HashMap的get方法 HashMap的初始化 HashMap的containsKey方法 HashMap的putAll方法 Ha ...
- 【Azure 云服务】云服务(经典) 迁移至云服务(外延支持) 的相关疑问
问题描述 根据微软官方文档说明,云服务(经典)已弃用.所以关于它有以下的一些疑问: 一:迁移时候的停机时间问题? 二:云服务(经典) 与 云服务(外延支持) 的区别是什么? 三:注意事项有那些呢?如 ...
- Java 异常处理(1) :try-catch-finally的使用
1 package com.bytezero.throwable; 2 3 import java.io.File; 4 import java.io.FileInputStream; 5 impor ...
- 【容斥、状压dp】主旋律 题解
[清华集训2014]主旋律 题解 神秘题. 题目简述 给你一个有向图 \(G=(V,E)\).求有多少 \(E\) 的子集 \(E'\) 使得新图 \(G'=(V,E')\) 是强连通图. 强连通图的 ...
- Swagger (API框架,API 文档 与API 定义同步更新)
1.依赖 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring ...
- 摆脱鼠标系列 - vscode 左右切换文档 快捷键换成 Ctrl + Alt + 左右箭头
为什么 默认快捷键是 Ctrl + PageUp PageDown 用的不太习惯 Ctrl + Alt + 左右箭头 和 双列的快捷键冲突了,那个就不用了,基本没用过 备份图
- 简单实用算法——位图算法(BitMap)
目录 算法原理 优点和缺点 算法实现(C#) 算法应用 参考文章 算法原理 BitMap的基本思想就是用一个bit位来标记某个元素对应的Value,而Key即是该元素.由于采用了Bit为单位来存储数据 ...
- 记Okhttp的拦截器导致app崩溃问题
原文: 记Okhttp的拦截器导致app崩溃问题 - Stars-One的杂货小窝 app对接的后台接口,传参需要加密,获取数据需要解密,于是使用了拦截器去实现,然后发现以下问题: 即使在发起请求的那 ...
- 三维模型OBJ格式轻量化的跨平台兼容性问题分析
三维模型OBJ格式轻量化的跨平台兼容性问题分析 三维模型的OBJ格式轻量化在跨平台兼容性方面具有重要意义,可以确保模型在不同平台和设备上的正确加载和渲染.本文将分析OBJ格式轻量化的跨平台兼容性技术, ...