• Java基础:Java数字类型


    Java 中包含多种运算符:算数运算符、关系运算符、逻辑运算符、位运算符。在 Math 类中,包含了各种各样的数学函数。在编写不同类别的程序时,可能需要的函数也不同。要生成一个随机数,可以使用 Random 对象。

    本篇主要记录内容包括:运算符、数学工具类




    一、运算符

    Java 中包含多种运算符:算数运算符、关系运算符、逻辑运算符、位运算符。

    1、算数运算符

    在 Java中,使用算术运算符 + - * / 表示加、减、乘、除运算。整数的求余操作(有时称为取模)用 % 表示。

    程序员都知道加 1、减 1 是数值变量最常见的操作。在 Java 中,借鉴了 C 和 C++ 的做法,也提供了自增、自减运算符:n++ 将变量 n 的当前值加 1,n-- 则将 n 的值减1。

    注意事项:①加法运算符在连接字符串时要注意,只有直接与字符串相加才会转成字符串;②当参与 / 运算的两个操作数都是整数时,表示整数除法;否则,表示浮点除法。③%为整除取余符号,小数取余没有意义,结果符号与被取余符号相同;④整数做被除数,0 不能做除数,否则报错;⑤小数做被除数,整除 0 结果为 Infinity,对 0 取模结果为 NaN

    2、关系运算符

    Java 包含丰富的关系运算符。要检测相等性,可以使用两个等号 ==。例如,3==7 的值为 false,另外可以使用 != 检测不相等。例如,例如,3!=7 的值为 true。最后,还有经常使用的 <(小于)、>(大于)、<=(小于等于)和 >=(大于等于)运算符。

    注意事项:①结果只能是truefalse;②字符间的比较,比较的是其ASCII值;③浮点数与整数比较,只要值相等,就返回true

    3、逻辑运算符

    Java 沿用了 C++ 的做法,使用 && 表示逻辑 “与” 运算符,使用||表示逻辑 “或” 运算符。从 != 运算符可以想到,感叹号 ! 就是逻辑非运算符。&&|| 运算符是按照 “短路” 方式来求值的:如果第一个操作数已经能够确定表达式的值,第二个操作数就不必计算了。

    注意事项:①&& : 又叫短路运算符,A&&B,如果A为假,不会去计算B的值,直接得到结果为 false;②& : A&B,即使A为假,也会计算B的值;③|| : 也是短路运算符,A||B,如果A为真,不会去计算B的值,直接得到结果为 true;④| : A|B,即使A为真,也会计算 B 的值;⑤^ : 异或,左右两边条件结果相同,结果就为 false,左右两边结果不同,结果就为 true。

    4、位运算符(与逻辑运算符不是同一个概念)

    处理整型类型时,可以直接对组成整型数值的各个位完成操作。这意味着可以使用掩码技术得到整数中的各个位。位运算符包括:& | ~ ^ >> << >>>

    注意事项:①&:“与” 运算符,两个都为 1 时才为 1,其他情况均为 0;②|:“或” 运算符,两个都为 0 时才为 0,其他情况均为 1;③~:“非” 运算符,取反,即 1 变为 0,0 变为1;④^:“异或” 运算符,相同值为 0,不同值为 1 ;⑤>>:“右移” 运算符,m>>n,把 m 的二进制数右移 n 位,m 为正数,高位全部补 0,m 为负数,高位全部补 1;⑥<<:“左移” 运算符,m<,把 m 的二进制数左移 n 位,高位超出 n 位都舍弃,低位补 0 (此时可能出现正数变负数);⑦>>>:“无符号右移” 运算符,m>>>n,整数 m 表示的二进制右移 n 位,不论正负数,高位都补 0。


    二、数学工具类

    1、Math 数学类

    在 Math 类中,包含了各种各样的数学函数。在编写不同类别的程序时,可能需要的函数也不同。下面的汇总了一部分最常用的方法。

    方法名方法说明方法名方法说明
    Math.sqrt(i);求平方根Math.rint(f);奇数向上,偶数向下取整(浮点型)
    Math.ceil(f);向上取整Math.floor(f);向下取整
    Math.pow(m, n);m 的 n 次幂Math.round(i);四舍五入取整(整形)
    Math.random();0-1 的随机数(浮点型)Math.abs(-i);取绝对值
    Math.max(a, b);返回大值Math.min(a, b); 返回小值
    Math.signum(i)小于 0 返回 -1 / 等于 0 返回 0 / 大于 0 返回 1

    Math 数学类还提供了三角函数:

    Math.sin(3.14); // 0.00159...
    Math.cos(3.14); // -0.9999...
    Math.tan(3.14); // -0.0015...
    Math.asin(1.0); // 1.57079...
    Math.acos(1.0); // 0.0
    
    • 1
    • 2
    • 3
    • 4
    • 5

    Math 还提供了几个数学常量:

    double pi = Math.PI; // 3.14159...
    double e = Math.E; // 2.7182818...
    Math.sin(Math.PI / 6); // sin(π/6) = 0.5
    
    • 1
    • 2
    • 3
    2、Random 类

    要生成一个随机数,可以使用 Random 对象。下面的汇总了一部分最常用的方法。

    方法名方法说明方法名方法说明
    nextInt();随机生成 int 数据类型范围的数nextInt(i);从0开始,左闭右开随机生成
    nextLong()随机生成 long 数据类型范围的数nextFloat()生成一个 [0,1) 之间的 float
    nextDouble()生成一个 [0,1) 之间的 double
  • 相关阅读:
    如何面向组件跨层级通信
    JK405R-SOP16录音芯片ic方案的测试板使用说明以及咪头如何选择
    基于Java+Swing+Mysql企业人事管理系统
    Microsoft SQL Server 2022 新特性之 T-SQL 语言增强
    Django之初入门
    小山菌_代码随想录算法训练营第二十七天| 93.复原IP地址 、
    数的划分(dfs,dp)
    IIS部署SSL证书
    java-net-php-python-ssm出版社管理系统计算机毕业设计程序
    关于安装PsBody-mesh0.4【MPI-IS/mesh的make all报错】踩坑实录
  • 原文地址:https://blog.csdn.net/weixin_45187434/article/details/127859128