解读Java中BigDecimal.ZERO.compareTo()的返回值含义[通俗易懂]

解读Java中BigDecimal.ZERO.compareTo()的返回值含义[通俗易懂]JavacompareTo()用法例如:publicstaticvoidmain(String[]args){BigDecimalbnum1,bnum2;bnum1=newBigDecimal(“10”);bnum2=newBigDecimal(“20”);intres=bnum1.compareTo(bnu…

大家好,又见面了,我是你们的朋友全栈君。

Java compareTo() 用法

例如:

public static void main(String[] args) {

    BigDecimal bnum1, bnum2;

    bnum1 = new BigDecimal(“10”);
    bnum2 = new BigDecimal(“20”);

    int res = bnum1.compareTo(bnum2); 

    String str1 = “两个数相等”;
    String str2 = “第一个数更大”;
    String str3 = “第二个数更大”;

    if( res == 0 )
        System.out.println( str1 );
    else if( res == 1 )
        System.out.println( str2 );
    else if( res == -1 )
        System.out.println( str3 );
    }
}

运行代码,得到以下结果:
第二个数更大

为什么比较返回值是0,-1和1呢? 我们去看看源代码!

解读Java中BigDecimal.ZERO.compareTo()的返回值含义[通俗易懂]

根据源码中的三元运算符

解读Java中BigDecimal.ZERO.compareTo()的返回值含义[通俗易懂]

可以发现:

情况1. 如果xs等于ys,则返回0。

情况2. 如果xs不等于ys,则会执行另外一个三元运算符((xs > ys) ? 1 : -1)

这时候就会比较 xs 和 ys:

 xs > ys 返回 1,

xs < ys 返回 -1。

因此得到结论!

两个数比较的返回值

  • 如果第一个参数与第二个参数相等返回0。

  • 如果第一个参数小于第二个参数返回 -1。

  • 如果第一个参数大于第二个参数返回 1。

广告时间

我总结的个人面经以及面试资料,非常非常实用,欢迎点赞和Fork!

https://github.com/doinb08/bat_offer

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/159883.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • python手机端秒杀_python实现淘宝秒杀脚本

    python手机端秒杀_python实现淘宝秒杀脚本本文实例为大家分享了python实现淘宝秒杀脚本的具体代码,供大家参考,具体内容如下1.安装pycharm。网上教程很多。2.安装Selenium库。Selenium支持很多浏览器,我选择的是Firefox浏览器。因为我这里是Python3环境,自带的又pip,所以安装selenium直接使用pip安装安装方法:–打开cmd;–输入命令进入Python36/Scripts(找到下图的目录)…

  • vue与jquery混用_vue怎么使用jquery

    vue与jquery混用_vue怎么使用jquery有时候只要想到要用的vue.js的时候就会惯性的想起用vue-cli手脚架搭建一个项目,但是有时候的业务场景并不适合用vue-cli手脚架,这个时候使用vue+jquery混合使用,把他们的优点结合起来使用会大大提升开发效率。那么vue+jquery应该如何使用呢?一、首先引入vue文件(cdn或者下载到本地都行),参考vue官方连接https://cn.vuejs.o…

    2022年10月10日
  • FreeWebHostingArea_for free 与free用法

    FreeWebHostingArea_for free 与free用法by EliseMoreauUpdatedApril09,2018Wonderingiftherearethereanygoodsitesouttheremadepurelyforfreeimagehosting?Well,you’reinluck!Wespendalotofourtimepushinginformatio…

  • 免费网络电话哪个最好_有什么网络电话是免费的

    免费网络电话哪个最好_有什么网络电话是免费的今天试用了,很容易,声音也很好。http://www.vipoo.cn/

  • C语言实现-航空订票系统(飞机订票系统)单机版&联网版「建议收藏」

    C语言实现-航空订票系统(飞机订票系统)单机版&联网版「建议收藏」操作系统:Windows下运行。如果需要在Linux运行,则需要修改删除conio.h,自己写个头文件获取键盘输入。我已经写好了getch.h文件,需要将其导入使用。开发环境:CodeBlocks开发语言:C实现功能:登录,订票,退票数据存储:文本读写涉及文件:相关文件下载:码云:传送门GitHub:传送门相关图片(仅供参考):程序是没有涉及旅行社的ER…

  • java是什么?java能用来干嘛?[通俗易懂]

    java是什么?java能用来干嘛?[通俗易懂]java是什么?java能用来干嘛?Java是一种开发语言(核心特点:跨平台,面向对象,名称由来看这里:J2EE里面的2是什么意思),对于开发者来讲,Java基本等于Jdk。Java由四方面组成:Java编程语言,即语法。Java文件格式,即各种文件夹、文件的后缀。Java文件格式,即各种文件夹、文件的后缀。Java虚拟机(JVM),即处理*.class文件的解释器。Java应…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号