基本运算符

1、Java语言支持如下运算符

 

 

算术运算符:%取余运算,称为模运算

赋值运算符:=,可用于计算,也用于为变量或常量赋值,例如int a = 10,正规的说法是:将10赋值给a

关系运算符:

  1. ==,用于比较,判断两个数字是否相等;

  2. !=,不等于,也是用于判断;

  3. instance of,面向对象使用的运算符

逻辑运算符:

  1. &&:与运算,表示同时成立,相当于and的意思

  2. ||:或运算,表示对立关系,只能有一个成立,相当于or的意思。

  3. :非运算,也叫取反运算,表示非你即我的意思。

     

以上是必须掌握的4类运算符,下面的是作为了解的三类运算符,知道就行

 

位运算符:就是二进制里的0101这样的位,位运算符就是和这个相关的

条件运算符与扩展运算符:偷懒的运算符

 

 

2、包机制

 

  1. 包就是文件夹,这里只介绍创建包的方法,不深入讲解

  2. 创建包的方法如图:依次选择srcNewPackage

     

     

    然后在弹出的窗口输入包的名字,这里起名叫:base(基础的意思)

     

     

     

    然后就会创建一个base目录

     

     

  3. 创建好包之后,将之前练习的class类都移动到base包里,就做到了分类,这就是包的作用

  4. 然后再创建一个operator目录,存放基本运算符的class类Demo1

     

     

  5. 可以看到,在把class放进包里之后,新建的class,会在最上面自动多出一行package 包名的代码,这一行不能删,否则会报错

 

3、四则运算实际运用(二元运算符)

 

  1. 首先定义4个变量a、b、c、d,并进行赋值,然后输出ab两个变量的加减乘除(也成为二元运算符),如下图

     

     

     

    输出的结果如上图,可以看到:加、减、乘的运算结果都没有问题,但是a/b出现了问题,a的值为10,b的值为20,相除的结果应该是0.5,但是输出的结果却是0

     

    这是因为a和b都是int类型,计算之后的结果也是int型,但是计算的结果是0.5,必须是浮点数类型才能正常输出,整数类型优先级低于浮点数类型,低转高无法自动转换,因此int类型会对结果进行取整,即省略小数点后的部分,所以得出的结果是0

     

    所以,需要在计算之前,根据之前讲的强制转换的方法,至少将a或者b其中一个强制转换为double类型,这样计算的结果就是double类型的数据,可以正常的输出了

     

  2. 在定义四个不同类型的变量a1、b1、c1、d1,数据类型分别为long、int、short、byte,分别赋值为a1 = 123123123123L、b1 = 123、c1 = 10、d1 = 8,如下图

     

     

    同样是做四则运算,相加输出的结果如下

     

     

     

    参与运算的变量中有long类型时,运算后结果的数据类型必然为long,当没有long类型的情况下,无论是什么其他整数类型的的运算,最后输出的结果必然是int

     

    对计算的结果进行数据类型的强制转换时,必须转换为合理的类型,例如int类型可以转换为double类型,但是无法转换为string类型的,强制转换会报错,如下图

    图里可看到,c1和d1的数据类型分别为shortbyte,但c1+d1的数据类型是int,正好印证了上面的结论,除了long数据以外,任何其他整数类型的运算,都会输出int类型的数据

     

    造成以上情况的原理是数据类型的优先级,因为int类型的优先级在整数类型中除了long之外,是最高优先级,所以除了long以外的其他整数类型,在计算时,都会被低转高自动转换为int类型,哪怕参与计算的两个变量,数据类型都是short,但是计算时,依旧会被转化为int类型

     

     

  3. 但是这个规则只适用于整数类型浮点数类型则没有这个限制,如下图,两个同样为float类型的变量a2和b2,分别赋值为10.1和10.2,double类型的优先级高于float类型,但是a2+b2在参与计算时,并没有自动转换为double类型,依然是保持float类型

     

     

     

4、关系运算符

  1. 关系运算符只会返回两个结果:正确(true)、错误(false),所以关系运算符的数据类型一定时布尔值(boolean)

  2. 关系运算符实际运用如下图

    定义两个变量a3b3,分别赋值为10和20,然后两个数相互之间进行比较,如果系统判断比较的结果是对的,就会返回true,反之则会返回false,如下图

    关系运算符,通常用于判断,即通常和if判断语句一起使用

     

  3. 模运算(取余):当除法没有除尽,有余数时,用%可以忽略相除的结果,只输出余数,如下图

     

     

    定义3个变量a4、b4、c4,分别赋值为10、21、22

    当b4除以a4时,21 / 10 = 2......................1,余数为1,所以b4%a4输出为1

    当c4除以a4时,22 / 10 = 2......................2,余数为2,所以c4%a4输出为2

 

 

 

 

 

posted @ 2022-06-12 23:28  零和一的浪漫  阅读(253)  评论(0编辑  收藏  举报