第三天学习

       第三课 数据类型与运算符

        JAVA是强类型语言,意味着变量与表达式在编译时就能确定类型,所有变量必须先显式声明,后使用。JAVA语言的数据类型有:基本类型与引用类型。基本类型有8种,引用类型主要包括类、接口和数组类型。引用类型是对一个对象的引用,是变量的一个“指针”。

        8种基本类型有:整数型(byte、short、int、long)、字符型(char)、浮点型(float、double)、布尔型(boolean)。对于字符串类型是一个类,不属于基本数据类型。

        一般的整数常量是int类型,如果较少时,可以自动当成short、byte类型处理,但是较大时不会自动当成long类型,而是要在后面加上L。对于字符类型可以直接当作一个16位的无符号int型使用,也可以将0-65535范围内的int型赋值给字符类型。浮点数使用科学计数法表示,因此将一个很大的浮点数赋值给一变量后可能会发生变化,默认的浮点型数是double型。三个特殊的浮点型有正无穷大、负无穷大、非数(NaN),所有正无穷相等,所有负无穷大也相等,非数不与任何数相等。

       JAVA语言提供了7个数值型之间的自动转换:byte到short到int到long到float到doublechar到int;另外还有基本类型到字符串。这种自动类型转换相当于小瓶水入大瓶水,而对于相反的方向则需要用强制转换。通常情况下,不能将字符串直接转换成基本类型,但可以通过对应的包装类实现这种转换。在有不同类型数值的表达式中,会出现表达式中数值类型自动提升

JAVA语言提供了6种运算符:算术运算符、位运算符、比较运算符、逻辑运算符、类型相关运算符(强制转换、instanceof)与赋值运算符。算术运算符的“+”可以当作连接运算符。位运算符的移位不会改变值本身,而仅仅得到一个移位后的结果。比较运算符的大于,小于的两个操作数只能是数值型且可以是不相同的数据类型,而等于与非等于的操作数是引用类型时,必须是相同的对象才相等。在这里,可以比较数值型与对应的包装类的实例,这种比较是直接取出包装类实例中的数值进行比较,但比较两个包装后的实例时则应该是相同的对象才相等。对于包装器Integer,String类采用了缓存的策略,因而当将相同的数打包时是同一个对象,将同样的字符串打包时是相同的对象。逻辑运算符中的可能会存在短路情况。赋值运算符的右边是一个值而不是一个变量。

最后注意对于字符串变量,可以采用构造方法String("abc"),这时会采用缓存策略,而将直接量“abc”赋值会是不同的实例。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值