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 关键字声明,只能取 truefalse 的值。

示例:

boolean isJavaFun = true;
boolean isFishTasty = false; System.out.println(isJavaFun); // 输出:true
System.out.println(isFishTasty); // 输出:false

布尔表达式 返回布尔值:truefalse

示例:

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 的值进行比较。
  • 如果找到匹配项,则执行相关的代码块。
  • breakdefault 关键字是可选的

下面的示例使用星期几的数字来计算星期几的名称:

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 数学运算与条件语句全解析的更多相关文章

  1. var、符号运算、条件语句、三元(目)运算、自加和自减

    1.var  a=“hello world” a 这个变量是字符串了,对于里面的每一个字母来说,他是字节,里面有11个字节,(包括空格),字节总数用length表示 2.符号运算 + 字符串拼接 . ...

  2. JavaSE基础(六)--Java流程控制语句之条件语句

    Java 条件语句 - if...else 一个 if 语句包含一个布尔表达式和一条或多条语句. 语法 if 语句的语法如下: if(布尔表达式) { //如果布尔表达式为true将执行的语句 } 如 ...

  3. Yii2.0中文开发向导——Where条件查询全解析

    在Yii的Model里进行查询的时候 where是必不可少的.Where方法声明为 static where( $condition ) 其中参数 $condition类型为字符串或者数组 1.字符串 ...

  4. Java 最常见 200+ 面试题全解析:面试必备

    本文分为十九个模块,分别是: Java 基础.容器.多线程.反射.对象拷贝.Java Web .异常.网络.设计模式.Spring/Spring MVC.Spring Boot/Spring Clou ...

  5. Java 最常见 200+ 面试题 + 全解析

    本文分为十九个模块,分别是: Java 基础.容器.多线程.反射.对象拷贝.Java Web .异常.网络.设计模式.Spring/Spring MVC.Spring Boot/Spring Clou ...

  6. 吴裕雄--天生自然 JAVA开发学习:条件语句

    public class Test { public static void main(String args[]){ int x = 10; if( x < 20 ){ System.out. ...

  7. 【Java集合框架002】原理层面:HashMap全解析

    一.前言 二.HashMap 2.1 HashMap数据结构 + HashMap线程不安全 + 哈希冲突 2.1.1 HashMap数据结构 学习的时候,先整体后细节,HashMap整体结构是 底层数 ...

  8. Java并发原理层面:ReentrantLock中lock()、unlock()全解析

    一.前言 Java线程同步两种方式,synchronized关键字和Lock锁机制,其中,AQS队列就是Lock锁实现公平加锁的底层支持. 二.AQS源码对于lock.lock()的实现 2.1 AQ ...

  9. 【Java并发007】原理层面:ReentrantLock中lock()、unlock()全解析

    一.前言 Java线程同步两种方式,synchronized关键字和Lock锁机制,其中,AQS队列就是Lock锁实现公平加锁的底层支持. 二.AQS源码对于lock.lock()的实现 2.1 AQ ...

  10. Java JVM 内存泄漏--全解析和处理办法 [ 转载 ]

    Java JVM 内存泄露——全解析和处理办法 [转载]   @author 小筐子 @address http://www.jianshu.com/p/bf159a9c391a         JA ...

随机推荐

  1. 亲测可行,Android Studio 查看源码出现 Source for ‘Android API xxx Platform’ not found 的解决方法

    亲测可行,Android Studio 查看源码出现 Source for 'Android API xxx Platform' not found 的解决方法 如标题中的问题,产生的原因就是 SDK ...

  2. 基于javaweb的个人音乐网站

    一 .需求 ① 前台用户: 用户注册和登录以及完善个人资料: 添加好友功能(用户之间可通过发送好友申请添加好友,被添加人可以同意或拒绝好友申请): 下载歌曲功能(当用户点击下载按钮时,就能下载相对应的 ...

  3. Django多方式登录认证

    多方式认证原理 我们平常使用的Django登录认证是django.contrib.auth.authenticate 点进去源码,我们会看到这个函数,真正的认证类是它里面的那个 继续点进去源码,会看到 ...

  4. EF Invalid column name 'Discriminator' Invalid column name 'TagCode'.

    参考资料:Invalid column name 'TagCode'. 该异常和Discriminator没关系,一般原因:1.数据库中字段和实体类字段不一致导致的2.创建新增继承于数据库对应的实体类 ...

  5. NodeJS本地公用类库

    git + npm link 先来看一下npm install 文档. npm 支持安装 git 仓库,支持 git , git+ssh , git+http , git+https , or git ...

  6. 【Azure Redis 缓存】C#程序是否有对应的方式来优化并缩短由于 Redis 维护造成的不可访问的时间

    问题描述 C#程序是否有对应的方式来优化并缩短由于 Redis 维护造成的不可访问的时间? Redis维护说明: Redis 服务维护时,会把副本节点提升为主节点,且旧主节点关闭现有连接时,这个时候, ...

  7. PlatformIO+esp32+添加自己的库(.c.h文件)

        什么都放main.c的话,很有可能堆积成屎山,所以我想给分开写,每个功能有自己的.c..h文件. 在lib下新建文件夹,例如led,再在里面分别建led.c.led.h; 写好内容后再main ...

  8. Redis高级数据类型

    ## 1.Redis相关配置信息 服务器端设定 设置服务器以守护进程的方式运行 daemonize yes|no 绑定主机地址 (只能此ip访问) bind 127.0.0.1 设置服务器端口号 po ...

  9. 冲击900亿美元估值!邀约路演、秘密交表的Shein上市有望

    双十一的狂欢刚刚结束,Shein即将赴美上市的消息又在电商圈里投下一枚重磅炸弹. 继被媒体曝光其寻求900亿美金估值后,最新的消息称其已邀请投资人参与路演,且已秘密完成交表.这个神秘的中国独角兽,离敲 ...

  10. 百度api经历

    底部参考文档,欢迎点击:https://www.runoob.com/http/http-content-type.html 这两天遇到了点糟心事,因为小伙伴走了.然后事情起因是这样的,来了个任务封装 ...