Java 数学运算与条件语句全解析

本文涉及的产品
Serverless 应用引擎 SAE,800核*时 1600GiB*时
可观测可视化 Grafana 版,10个用户账号 1个月
性能测试 PTS,5000VUM额度
简介: 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 之间的随机数

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,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎 点赞、收藏、关注

相关文章
|
15天前
|
缓存 Java 应用服务中间件
Java虚拟线程探究与性能解析
本文主要介绍了阿里云在Java-虚拟-线程任务中的新进展和技术细节。
|
13天前
|
设计模式 安全 Java
Java 编程中的设计模式:单例模式的深度解析
【9月更文挑战第22天】在Java的世界里,单例模式就像是一位老练的舞者,轻盈地穿梭在对象创建的舞台上。它确保了一个类仅有一个实例,并提供全局访问点。这不仅仅是代码优雅的体现,更是资源管理的高手。我们将一起探索单例模式的奥秘,从基础实现到高级应用,再到它与现代Java版本的舞蹈,让我们揭开单例模式的面纱,一探究竟。
23 11
|
11天前
|
Java
Java 条件语句 - if...else
Java 条件语句 - if...else
22 7
|
6天前
|
存储 算法 Java
深入解析 Java 虚拟机:内存区域、类加载与垃圾回收机制
本文介绍了 JVM 的内存区域划分、类加载过程及垃圾回收机制。内存区域包括程序计数器、堆、栈和元数据区,每个区域存储不同类型的数据。类加载过程涉及加载、验证、准备、解析和初始化五个步骤。垃圾回收机制主要在堆内存进行,通过可达性分析识别垃圾对象,并采用标记-清除、复制和标记-整理等算法进行回收。此外,还介绍了 CMS 和 G1 等垃圾回收器的特点。
19 0
深入解析 Java 虚拟机:内存区域、类加载与垃圾回收机制
|
13天前
|
缓存 负载均衡 Dubbo
Dubbo技术深度解析及其在Java中的实战应用
Dubbo是一款由阿里巴巴开源的高性能、轻量级的Java分布式服务框架,它致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。
39 6
|
9天前
|
监控 算法 Java
深入解析Java中的垃圾回收机制
本文旨在全面解析Java的垃圾回收机制,探讨其工作原理、常见算法以及在实际开发中的应用。通过对这一重要主题的深入分析,希望帮助读者更好地理解Java虚拟机(JVM)如何管理内存,从而编写出更高效、稳定的Java应用程序。
|
9天前
|
Java 开发者
Java中的异常处理机制深度解析
在Java编程中,异常处理是保证程序稳定性和健壮性的重要手段。本文将深入探讨Java的异常处理机制,包括异常的分类、捕获与处理、自定义异常以及一些最佳实践。通过详细讲解和代码示例,帮助读者更好地理解和应用这一机制,提升代码质量。
12 1
|
19天前
|
Java 程序员 开发者
Java中的异常处理机制深度解析
本文旨在深入探讨Java中异常处理的核心概念与实际应用,通过剖析异常的本质、分类、捕获及处理方法,揭示其在程序设计中的关键作用。不同于常规摘要,本文将直接切入主题,以简明扼要的方式概述异常处理的重要性及其在Java编程中的应用策略,引导读者快速把握异常处理的精髓。
|
18天前
|
安全 Java 开发者
Java并发编程中的锁机制解析
本文深入探讨了Java中用于管理多线程同步的关键工具——锁机制。通过分析synchronized关键字和ReentrantLock类等核心概念,揭示了它们在构建线程安全应用中的重要性。同时,文章还讨论了锁机制的高级特性,如公平性、类锁和对象锁的区别,以及锁的优化技术如锁粗化和锁消除。此外,指出了在高并发环境下锁竞争可能导致的问题,并提出了减少锁持有时间和使用无锁编程等策略来优化性能的建议。最后,强调了理解和正确使用Java锁机制对于开发高效、可靠并发应用程序的重要性。
16 3
|
21天前
|
存储 监控 算法
Java中的内存管理与垃圾回收机制解析
本文深入探讨了Java编程语言中的内存管理策略和垃圾回收机制。首先介绍了Java内存模型的基本概念,包括堆、栈以及方法区的划分和各自的功能。进一步详细阐述了垃圾回收的基本原理、常见算法(如标记-清除、复制、标记-整理等),以及如何通过JVM参数调优垃圾回收器的性能。此外,还讨论了Java 9引入的接口变化对垃圾回收的影响,以及如何通过Shenandoah等现代垃圾回收器提升应用性能。最后,提供了一些编写高效Java代码的实践建议,帮助开发者更好地理解和管理Java应用的内存使用。

推荐镜像

更多
下一篇
无影云桌面