返回顶部
首页 > 资讯 > 后端开发 > Python >Java%(取模运算)全面讲解
  • 880
分享到

Java%(取模运算)全面讲解

2024-04-02 19:04:59 880人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

目录Java%(取模运算)Java的取模运算c++的取模运算注意事项:奇偶判断编程语言中的%取模运算的本质探究公式:a % b = a - a / b * b(对于a为正数)公式:a

Java%(取模运算)

Java的取模运算

1.实现算法

public static double ramainder(double dividend, double dividor) {
        return dividend - dividend / dividor * dividor;
    }

2.java的取模运算支持类型:字符型(自然不包括负数)、字节型、短整型、整型、长整型、单精度浮点型、双精度浮点型.

C++的取模运算

算法同上

取模运算支持类型:字符型(不包括负数)、字节型、短整型、整型、长整型、布尔类型(除数不能为false,原因在C++中,true表示1,false表示0,自然除数不能为0;).

注意事项:奇偶判断

先看一段代码:

public static void main(String[] args) {
        int arrs[] = { 2, 1, 0, -1, -2 };
        for (int i = 0; i < arrs.length; i++) {
            System.out.println(arrs[i] + (arrs[i] % 2 == 1 ? "是奇数" : "是偶数"));
        }
    }

很显然是一段判断奇偶性的代码,但是结果可能大家都能看得出来.

2是偶数1是奇数0是偶数-1是偶数-2是偶数

为什么-1会是偶数呢? 原因就是取模运算的实现算法导致的.

System.out.println(arrs[i] + (arrs[i] % 2 == 1 ? "是奇数" : "是偶数"));
//修改为:
System.out.println(arrs[i] + (arrs[i] % 2 == 0 ? "是偶数" : "是奇数"));

给我一个警示:在以后的奇偶判断使用中,使用偶数进行判断代替使用奇数.

(同样的现象C++中也是一样)

编程语言中的%取模运算的本质探究

公式:a % b = a - a / b * b(对于a为正数)

如:

-10 % 3 => -10 - (-10)/ 3 * 3 = -10 + 9 = -1

本质就是-10能够加减多少个3能最接近0,-10肯定要加三个3,就等于-1接近0

10 % -3 => 10 - 10 / (-3) * (-3) = 10 - 9 = 1

本质就是10加减多少-3能最接近0,10肯定要加三个-3,就等于1接近0

-10 % -3 => -10 - (-10) / (-3) * (-3) = -10 + 9 = -1

本质就是-10能够加减多少个-3能最接近0,-10肯定要减三个-3,就等于-1接近0

当a为负数时:

公式:a - (int)a / b * b

如:

-10.5%3 = -10.5 - (-10) / 3 * 3 = -10.5 + 9 = -1.5

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: Java%(取模运算)全面讲解

本文链接: https://lsjlt.com/news/162520.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Java%(取模运算)全面讲解
    目录Java%(取模运算)Java的取模运算C++的取模运算注意事项:奇偶判断编程语言中的%取模运算的本质探究公式:a % b = a - a / b * b(对于a为正数)公式:a...
    99+
    2024-04-02
  • java中取模运算
    在Java中,取模运算使用百分号(%)符号表示。它返回两个操作数相除后的余数。下面是一些示例: 正数取模:如果被除数为正数,取模运算的结果也为正数。例如: int a = 10; int b = 3; int result = a %...
    99+
    2023-08-31
    java 开发语言
  • Java设计模式之GOF23全面讲解
    一、什么是设计模式 设计模式(Design pattern) 是解决软件开发某些特定问题而提出的一些解决方案也可以理解成解决问题的一些思路。通过设计模式可以帮助我们增强代码...
    99+
    2024-04-02
  • Java中如何实现取模运算
    小编给大家分享一下Java中如何实现取模运算,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Java%(取模运算)Java的取模运算实现算法public ...
    99+
    2023-06-26
  • Java中的位运算符全解
    目录1. &(按位与运算符)2. |(按位或运算符)3. ^(异或运算符)4. <<(左移运算符)5. >> (右移移运算符)6. ~(取反运算符)7...
    99+
    2024-04-02
  • Java泛型与注解全面分析讲解
    目录1.什么是泛型2.为何使用泛型2.1.如何定义泛型2.2.通配符2.3.受限泛型2.4.泛型接口2.5.泛型方法3.java高级--注解3.1.预定义注解3.2.自定义注解(初级...
    99+
    2024-04-02
  • Java全面细致讲解类与对象
    目录类和对象的关系类和对象的实例化static关键字private实现的封装构造方法this关键字代码块匿名对象小结类和对象的关系 类就是一类对象的统称。对象就是这一类具体化的一个...
    99+
    2024-04-02
  • Java全面细致讲解Wrapper的使用
    目录一、概述二、作用三、使用1. 基本数据类型-包装类的实例(装箱)2. 包装类-基本数据类型(拆箱)3. String-基本数据类型/包装类4. 基本数据类型/包装类-String...
    99+
    2024-04-02
  • Java全面细致讲解final的使用
    目录一、理解二、作用1. 修饰-类2. 修饰-方法3. 修饰-变量3.1 修饰-成员变量(属性)3.2 修饰-局部变量三、经典题目一、理解 final:最终的 二、作用 final ...
    99+
    2024-04-02
  • 精辟全面且细致的java运算符教程详解
    目录前言一、算术运算符1.1 int/int结果还是int1.2 0不能作为除数1.3 关于%1.4 增量赋值运算符+= -= *= /=1.5 自增或自减运算二、关系运算符三、逻辑...
    99+
    2024-04-02
  • python学习之--取模运算
    python语言的取模运算: 如果 a/b = q, a%b = r (可表示为a/b=q … r) #在python中,遇到取模运算时,可以先用向下取整的方式算出q,然后结合下面的公式算出r。 那么 a = b*q + r 另...
    99+
    2023-01-31
    python
  • 【Java基础教程】(三十六)常用类库篇 · 第六讲:数学运算类——全面讲解Java数学计算支持类库,BigDecimal、Math、Random、DecimalFormat...~
    Java基础教程之常用类库 · 数学运算类 1️⃣ 概念🔍 数学运算类汇总 2️⃣ 优势和缺点3️⃣ 使用3.1 各数学计算支持类使用案例3.2 Math类3.3 BigDecimal类3.4 Random...
    99+
    2023-08-16
    java python 数据库 经验分享 开发语言 后端 算法
  • JavaScript中的运算符讲解
    一、JavaScript 算术运算符 算数运算符用于对数字执行算数运算: +:加法-:减法*:乘法/:除法%:系数++:递加--:递减 加法运算符(+)对数字相加: var x = ...
    99+
    2024-04-02
  • 全面剖析java 数据类型与运算符
    目录java的变量和类型基本数据类型——数值型整型浮点型字符型布尔型运算符运算符:|运算符:&运算符:^运算符:~运算符:>>运算符:<<运算符:&g...
    99+
    2024-04-02
  • Java基础全面讲解StringBuffer类的使用
    目录StringBuffer类常用方法字符串连接指定位置添加内容字符串反转替换指定范围的内容字符串截取删除指定范围的字符串查找指定的内容是否存在String与StringBuffer...
    99+
    2024-04-02
  • Java全面细致讲解==和equals的使用
    目录equals与==1. ==的使用1.1 概述1.2 代码演示2. equals的使用2.1 概述2.2 代码演示3. ==和equals的区别3.1 概述3.2 代码演示上篇博...
    99+
    2024-04-02
  • java数据类型和运算符的深入讲解
    一.整型变量 1.基本格式 int 变量名 = 初始值; 代码示例: public class CSDN { public static void main(String[]...
    99+
    2024-04-02
  • java JVM方法分派模型静态分派动态分派全面讲解
    目录前言1. 知识储备1.1 分派1.2 变量的静态类型 & 动态类型2. 静态分派a. 变量的静态类型 发生变化 的情况b. 静态分派的优先级匹配问题3. 动态分派4. 二...
    99+
    2024-04-02
  • 全面讲解CocosCreator热更新
    目录前言什么是热更cocos热更概述manifest工程资源和游戏包内资源的区别searchPaths搜索路径cocos的基础热更流程_localManifest:当前包内的mani...
    99+
    2024-04-02
  • C++超全面讲解多态
    目录多态的概念多态的定义及实现构成条件虚函数虚函数的重写虚函数重写的两个例外抽象类抽象类的概念接口继承和实现继承多态的原理虚函数表多态的原理多态的概念 概念:通俗的来说就是多种形态,...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作