解读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

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • pycharm如何设置背景图片_python配置pycharm

    pycharm如何设置背景图片_python配置pycharm工具栏也是有背景图的

    2022年8月25日
    3
  • bp神经网络及matlab实现_bp神经网络应用实例Matlab

    bp神经网络及matlab实现_bp神经网络应用实例MatlabBP神经网络通俗教程(matlab实现方法)黑色字体可看可不看,是帮助理解所用红色字体是比较重要的部分,必看BP神经网络是什么BP(Back-propagation,反向传播)神经网络是最传统的神经网络。当下的各种神经网络的模型都可以看做是BP神经网络的变种(虽然变动很大…)。这东西是干什么用的呢?我们在现实中要处理的一切问题映射到数学上只分为两类,可归纳的问题与不可归纳的问题。首先什么是不可归纳的问题,举个例子,你不能用一套完美的数学公式去表达所有的质数,因为目前的研究表明,还没有什么方法

    2022年9月12日
    0
  • 微信小程序从零开始开发步骤(一)_微信小程序开发零基础入门

    微信小程序从零开始开发步骤(一)_微信小程序开发零基础入门随时随地阅读更多技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666)、博主微信(guyun297890152)、QQ技术交流群(183198395)。from:https://www.jianshu.com/p/aaef5ceb3936从零开始小程序今天一不小心拿到了小程序的内测资格,为了不辜负微信团队的信任,我决定十一奋斗一把!不过话说我可是一个And…

    2022年9月1日
    1
  • Linux改变图片大小的命令,Linux运维知识之linux下使用convert命令修改图片分辨率…

    Linux改变图片大小的命令,Linux运维知识之linux下使用convert命令修改图片分辨率…本文主要向大家介绍了Linux运维知识之linux下使用convert命令修改图片分辨率,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助。Convert的resize子命令应该是在ImageMagick中使用较多的命令,它实现了图片任意大小的缩放,唯一需要掌握的就是如何使用它的一些参数测试设定值:此说明文件中所用的原始文件(src.jpg),宽度:200,高度:150命令格式:…

    2022年7月16日
    17
  • 理解ASP.NET Core验证模型(Claim, ClaimsIdentity, ClaimsPrincipal)不得不读的英文博文

    理解ASP.NET Core验证模型(Claim, ClaimsIdentity, ClaimsPrincipal)不得不读的英文博文

    2022年2月24日
    61
  • DirBuster使用教程

    DirBuster使用教程工具是kali自带,多用于网站的后台扫描工具路径:/usr/share/dirbustercd/usr/share/dirbuster进入路径后ls查看,会看到目录下的jar文件:2.java-jarDirBuster-1.0-RC1.jar打开jar文件3.出现可视化窗口,配置很多,现在我们先填写空白的输入框部分,这里我们在第一个输入框填写扫描网站的url地址4….

    2025年7月21日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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