Java基础教程(5)-Java中的运算符

2024-04-23 08:12:50 浏览数 (1)

Java中的运算符

Java有4大类运算符:算术运算、位运算、关系运算和逻辑运算。

另外Java还定义了一些附加的运算符用于处理特殊情况。

算术运算符

算术运算符的运算数必须是数字类型。算术运算符不能用在布尔类型上,但是可以用在char类型上,因为实质上在Java中,char类型是int类型的一个子集。

Java定义的算术运算符如下:

代码语言:java复制
' ' 加法
'–' 减法(一元减号)
'*' 乘法
'/' 除法
% 模运算,取余数
   递增运算
 = 加法赋值
–= 减法赋值
*= 乘法赋值
/= 除法赋值
%= 模运算赋值
-- 递减运算
  • 基本算术运算符——加、减、乘、除可以对所有的数字类型操作。减运算也用作表示单个操作数的负号。
代码语言:java复制
public class Demo2 {
    public static void main(String[] args) {

        int a = 1,b=2;
        System.out.println(a b);
        System.out.println(a-b);
        System.out.println(a*b);
        System.out.println(a/b);

    }
}

对整数进行“/”除法运算时,所有的余数都要被舍去。

  • 模运算符% 可以用于整数和浮点数
代码语言:java复制
public class Demo2 {
    public static void main(String[] args) {

        int a = 1,b=2;
        System.out.println(a % b);

        double c = 20.5,d = 0.6;
        System.out.println(c % b);
        System.out.println(c % d);

    }
}
  • Java提供特殊的算术赋值运算符,该运算符可用来将算术运算符与赋值结合起来;如 = %=
  • Java的递增和递减运算符“ ”和“--” ;递增或递减运算符采用前缀(prefix)或后缀(postfix)格式都是相同的。但是,当递增或递减运算符作为一个较大的表达式的一部分,如果递增或递减运算符放在其运算数前面,Java就会在获得该运算数的值之前执行相应的操作,并将其用于表达式的其他部分。如果运算符放在其运算数后面,Java就会先获得该操作数的值再执行递增或递减运算
位运算符

Java定义的位运算直接对整数类型的位进行操作,这些整数类型包括long,int,short,char byte。日常用到的不多;

关系运算符
  • 关系运算符(relational operators)决定值和值之间的关系。产生的结果是布尔值。常用在if控制语句和各种循环语句的表达式中;

主要有以下几种:

代码语言:java复制
== 等于
!= 不等于
> 大于
< 小于
>= 大于等于
<= 小于等于

运行如下代码:

代码语言:java复制
public class Demo2 {
    public static void main(String[] args) {

        int a = 1,b=2;
        System.out.println(a == b);
        System.out.println(a > b);
        System.out.println(a < b);
        System.out.println(a != b);
        System.out.println(a >= b);
        System.out.println(a <= b);
    }
}
逻辑运算符
  • 布尔逻辑运算符的运算数只能是布尔型。而且逻辑运算的结果也是布尔类型
代码语言:java复制
& 逻辑与
| 逻辑或
^ 异或
|| 短路或
&& 短路与
! 逻辑反
&= 逻辑与赋值(赋值的简写形式)
|= 逻辑或赋值(赋值的简写形式)
^= 异或赋值(赋值的简写形式)
== 相等
!= 不相等
?: 三元运算符(IF-THEN-ELSE)

布尔逻辑运算符“&”、“ |”、“ ^”,对布尔值的运算和它们对整数位的运算一样。逻辑运算符“!”的结果表示布尔值的相反状态

?运算符
  • Java提供一个特别的三元运算符(ternary)经常用于取代某个类型的if-then-else 语句。

?运算符的通用格式如下:

expression1 ? expression2 : expression3

其中,expression1是一个布尔表达式。如果expression1为真,那么expression2被求值;否则,expression3被求值。整个?表达式的值就是被求值表达式(expression2或expression3)的值。expression2和expression3是除了void以外的任何类型的表达式,且它们的类型必须相同;

我正在参与2024腾讯技术创作特训营最新征文,快来和我瓜分大奖!

0 人点赞