java取模运算怎么算(关于java除法向上取整函数)

在代码开发中,我们应该做到 “知其然,并知其所以然”。

判断一个数是奇数还是偶数是小学里学的基本知识,在代码开发中,一个数字是否是偶数,只需要判断是否能被2整除,那你会有几种写法呢?

int a = 10;  int flag = a % 2;  if (flag == 0) {      System.out.println("是偶数");  } else {      System.out.println("是奇数");  }

或者还可以这样写:

 int a = 10;   int flag = a % 2;   if (flag == 1) {        System.out.println("是奇数");    } else {        System.out.println("是偶数");    }

对于这个例子来讲,两种运行效果是一致的:


然后我们来升级一下,动态的输入奇偶数来判断:

 public static void mn(String[] args) {       //接收键盘输入参数       Scanner input = new Scanner(System.in);       System.out.println("请输入多个数字判断奇偶");       while (input.hasNextInt()) {           int a = input.nextInt();           int flag = a % 2;           if (flag == 1) {               System.out.println(a+" => 是奇数");           } else {               System.out.println(a+" => 是偶数");           }       }  }

当输到-1、-3时,结果就出错了,这和Java中的取余计算算法有关系:

    /**       * 取余计算 Java 处理取余原理       *       * @param dividend 被除数       * @param divisor  除数       * @return       */      public static int remainder(int dividend, int divisor) {          return dividend - dividend / divisor * divisor;      }

根据上面的方法,当输入-1时,计算结果是 -1,不等于1,所以结果就被判定为偶数了,我们修改一下判断方式:


在计算机语言中,% (或mod) 是一个常见的数学运算符,但不同的计算机语言对 % 有不同的定义,有的语言把 % 定义为取模,有的则把 % 定义为取余。

在中文体系下,取模和取余的定义不同1,在英文体系中,只有一个模运算 (Modulo operation)2,但是有最小正余数 (the least positive remainder) 和最小绝对余数 (the least absolute remainder) 的概念。

在 Java 中,% 代表的是取余。如果要进行取模,可以用 Math.floorMod() 方法。

感谢您访问:美文云网站!本文永久链接:https://meiwenyun.com/429133.html。侵删或不良信息举报请联系邮箱:820608633@qq.com或微信:meiwenyun888。
上一篇 2024年8月19日 03:50
下一篇 2024年8月19日 03:50

相关推荐

  • 防止手扶拖拉机作业时跑偏

    手扶拖拉机农田作业时很容易跑偏,这时不仅操作困难,而且会加速相关机件的磨损,严重影响作业质量。因此应该引起重视,注意预防。 1.犁耕作业 手扶拖拉机牵引单向双铧犁作业时.一侧驱动轮…

    2022年12月30日
    700
  • 网络用语鸡肋是什么意思

    1、鸡肋这个词现在在网络之中大多比喻的是,一些没意义或者是没什么作用的事情,也有用来表示一些没有什么有趣之处的作品等。出自《三国演义》第七十二回:诸葛亮智取汉中曹操兵退斜谷中,曹操…

    2023年4月18日
    653
  • 牛皮癣反复发作怎么办是什么原因导致的

    牛皮癣是非常严重的皮肤疾病,如果不治疗,或者是治疗不当,就会导致全身不适。全身肿胀、导致脓包的形成。牛皮癣为什么会反复发作呢?来了解一下吧! 1、精神因素导致 由于日常生活工作压力…

    2023年1月2日
    316
  • 手机简单app制作攻略(教你app制作妙招)

    要做好一款APP,首先我们要了解的是什么呢?需要了解的是客户的需求,这是开发前必须要了解的,你的用户是谁,他们需要什么样的APP,需要什么样的功能,了解需求后,才能制定接下来的步骤…

    2024年8月19日
    275
  • 龙鱼在人工条件下如何产卵?

    产卵前,两尾龙鱼就开始停食,雌鱼腹部也开始增大许多。这时的龙鱼,有时尾巴和尾巴紧紧贴在一起,要不就躺在对方的背上亲密地靠在一起。此时千万不要惊动它们。人太靠近去看就会惊动它,雄鱼不…

    2022年12月30日
    362
  • 金钱树的风水作用禁忌是什么(关于金钱木适合放的地方)

    金钱树作为人们最喜爱的盆栽之一,打理得当的金钱树不仅常年青翠,有着非常好的观赏意义,并且金钱树还有着很好的寓意,很对人都认为在室内摆放金钱树可以带来运气,那么金钱树放在什么位置好,…

    2024年4月12日
    325
分享本页
返回顶部