继续我们上期带你入门Java之每日3分钟Java——数据类型和常量变量的学习。今天我们来简要地介绍下Java中的数据运算符和它的数据类型转换机制。
数据运算符
运算符的元数
运算符的元数指的是运算符需要使用到的数的个数。例如a-b,可知-号为一个二元运算符,因此按照运算符元数可以将数据运算符分为三类,分别是一元运算符、二元运算符和三元运算符。
而从运算符的用途也可以对运算符进行分类,大致包括了以下几类:算术运算符、赋值运算符、比较运算符、逻辑运算符和三元运算符。
算术运算符包括,+、-、*、/、%和++以及--,分别对应加减乘除取余数操作和自己增加1和自己减少1的运算。
赋值运算符包括=、+=、-=、*=、/=、%=,=的意思和数学中有所差异,指的是将左边的数值变更为右边的数值,也可以说将右边赋值给左边。而+=指的则是将右边的数值加到左边得到的新的值赋值给左边,以此类推可知剩余的赋值运算符的含义。
比较运算符包括==、、=、!=,分别对应等于、小于、大于、小于等于、大于等于和不等于。
逻辑运算符包括&&,||,!,分别对应与或非运算。与运算指的是两个条件都要为真的条件下与运算才为真,或运算指的是两个条件其中之一为真或运算就为真,非运算真假性与原条件相反。
三元运算符指的是:?,其用法是a:b?c,意思是a如果为真表达式就取值b,否则取值c。
我们这里说的真假对应了之前的布尔数据类型,本质还是一种数据量运算。
数据类型转换
那么我们在使用运算符进行运算的时候,比如使用加号,1.1+1我们可以知道运算结果是2.1,是浮点数,但对计算机来说,这就是两种不同类型的数据进行了运算。这个时候就会发生数据类型转换。
那么数据类型转换也可以分为两种,分别是隐式数据类型转换和显式数据类型转换。隐式数据类型转换也叫自动转换,是系统自己帮助你完成的,转换规则是将数值可取范围较小的数据类型向数值可取范围较大的数据类型转换。比如我们之前举的例子中,1就会被从整型向浮点型转换,和1.1加运算后得到浮点数2.1后保存结果。
因此我们得到这样的转换流:byte/short/char->int->long->float->double
显性数据类型转换也叫强制类型转换,是我们人为的。转换方法是在数据前加上(数据类型),代码书写格式是:要转换成的类型 接受变量名= (要转换成的类型) 待转换数据;强制类型转换是将大范围数据向小范围转换,难免发生数据截断。比如我们将1.4转换为整型数据,这样就有了四舍五入的问题,这就是数据截断的发生,我们会因此损失精度。
简单的方法定义
方法,指的是封装在类内的数据操作。方法很像我们之前在C语言中学习过的函数,有着返回值和需要传入的参数,也有方法名,在Java中还多了用于控制可访问性的修饰符,如public、private等,这决定了什么情况的文件能够调用你的方法。
代码书写格式
可访问性修饰符 方法返回值类型 方法名称 (参数列表){
..........
return ;
}
方法返回值若为void可以不用在代码中包含return语句,否则一定要return语句。参数列表指的是需要向方法中传入的值,这些值是需要进行操作处理的数据。调用方法时,使用类找到方法名,使用方法名(参数列表)的形式调用方法。在类的主方法中,我们调用类内方法仅需要写出调用的方法名。对类外方法还是找到对应类文件,如果调用的是静态方法,我们只需使用类名.静态方法名(参数列表)的方式即可调用。反之如果访问的是非静态方法,我们要新建类对象,使用新建的类对象名.非静态方法名(参数列表)的方式来调用。
下期预告:带你入门Java之每日3分钟Java——流程控制关键字