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

相关推荐

  • 春天的词语和句子有哪些(关于春天的好词好句分享)

    春天来了,草长莺飞,万物复苏,不仅给人新的希望,同时也给学生写作文带来了无限素材,那些担心孩子写作文想不出素材的家长们,赶快为孩子收藏吧! 描写春天的好词 两字词语: 早春 初春 …

    2024年8月20日
    377
  • 夏季马甲搭配 夏季怎么搭配马甲

    简练率性的西装,无袖更显清爽,立体修身的剪裁,裙摆式设计,优雅中带有一丝俏皮,再搭配上一件浅色的百搭衬衫,知性又大方,气质满满;休闲的短款马甲与连衣裙的搭配,既有个性又有层次;本来…

    2024年8月12日
    396
  • 46kg等于多少斤(37秒前已更新)

    1、46千克(kg)=92斤。1千克=2斤,46×2=92斤。 2、1公斤等于2斤,所以46公斤等于46*2=92斤。 3、92斤。体重46kg等于92斤。1kg就是1千…

    2023年4月18日
    1.4K
  • 小孩几岁开始刷牙比较好

    一般来说,小孩的牙齿保健应该从牙齿开始长出来的时候就要开始了,通常是在6个月到1岁之间。以下是一些关于小孩刷牙的建议: 初期护理(6个月到1岁):当宝宝的第一颗牙齿长出来时,就可以…

    2024年8月4日
    423
  • 单招学校有哪些专业(最吃香的专业推荐)

    单招最吃香的几个专业包括:  计算机科学与技术 计算机科学与技术专业的就业前景非常好。根据我国教育部发布的《就业率高的本科专业排行榜》显示,计算机科学与技术专业的就业率超过90%。…

    2024年8月20日
    413
  • mac玩lol体验好吗(mac系统玩英雄联盟的测评)

    今年苹果发布会又又又来了,这次带来很多惊喜!之前很多人选购笔记本电脑都不会把苹果列为考虑范围,一个重要的原因就是不能和其他小伙伴愉快地开黑。今年苹果彻底打破了macOS和iOS的界…

    2024年8月17日
    406
分享本页
返回顶部