首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

数字比较还有比三目运算符更简洁的写法?没有技术含量的一篇文章,纯粹为了分享而分享

三目运算符太有名了,只要是二选一,几乎都用了三目运算。但是,除了三目运算符,还有更简洁的写法吗?

在 Java 中,比较两个数字并获取最小值可以通过多种方式实现。以下是几种常见的方法:

1. 使用条件语句

我们可以使用简单的条件语句(如 if 语句)来比较两个数字并获取最小值:

public class MinExample {

public static void main(String[] args) {

int num1 = 10;

int num2 = 5;

int minNum;

if (num1 < num2) {

minNum = num1;

} else {

minNum = num2;

}

System.out.println("最小值是: " + minNum); // 输出: 最小值是: 5

}

}

两个数字比较如果这样写,肯定会被周围同事嘲笑代码冗余。

2. 使用三元运算符

三元运算符提供了一种更简洁的条件表达式形式,可以用来获取最小值:

public class MinExample {

public static void main(String[] args) {

int num1 = 10;

int num2 = 5;

// 使用三元运算符获取最小值

int minNum = (num1 < num2) ? num1 : num2;

System.out.println("最小值是: " + minNum); // 输出: 最小值是: 5

}

}

这种写法比较普遍,也比较受推崇,看起来也更高级一些。

3. 使用 Math.min() 方法

Java 提供了 Math.min() 方法,可以直接用来获取两个数字中的最小值。示例代码如下:

public class MinExample {

public static void main(String[] args) {

int num1 = 10;

int num2 = 5;

// 使用 Math.min() 获取最小值

int minNum = Math.min(num1, num2);

System.out.println("最小值是: " + minNum); // 输出: 最小值是: 5

}

}

在源码中,我们更多看到的是这种写法,调用Math函数的静态方法。

Math的静态方法其实也是对三元运算符的封装。

4. 示例汇总

以下是一个完整的示例,展示上述三种方法的使用:

public class MinExample {

public static void main(String[] args) {

int num1 = 10;

int num2 = 5;

// 方法 1: 使用 Math.min()

int minWithMathMin = Math.min(num1, num2);

// 方法 2: 使用条件语句

int minWithIf;

if (num1 < num2) {

minWithIf = num1;

} else {

minWithIf = num2;

}

// 方法 3: 使用三元运算符

int minWithTernary = (num1 < num2) ? num1 : num2;

System.out.println("使用 Math.min() 获取的最小值: " + minWithMathMin); // 输出: 5

System.out.println("使用条件语句获取的最小值: " + minWithIf); // 输出: 5

System.out.println("使用三元运算符获取的最小值: " + minWithTernary); // 输出: 5

}

}

最后总结

在 Java 中,比较两个数字并获取最小值的方法有多种选择。Math.min() 方法是最简洁的选择,而条件语句和三元运算符提供了更多的灵活性。选择哪种方式可以根据个人偏好和具体需求来决定。

不止java语言,在JavaScript中也有Math函数,如果追求更简洁的写法,在js中也可以使用Math函数来比较两个数字的大小,并返回其中一个。

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OkQGNwEvjPL654-dm6zPdn4g0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券