您的位置:首页 > 编程语言 > Java开发

Java编程思想_笔记(三)

2015-06-17 00:08 381 查看
别名现象:两个对象“=”,避免别名现象应将两个对象的值“=”。
1)如果一个方法经常被使用,可以在另外一个包中创建这个方法,在用到此方法时直接引用。

2)equals()方法适合所有对象,但不适合“基本类型”,基本类型使用“==”和“!=”即可。因为euals()方法默认的行为是比较引用。

3)逻辑操作符:与(&&)、或(||)、非(!)生成的是一个布尔值(true或false)。

4)1.39e^(-43)f真正的含义是1.39*10^(-43)

5)按位操作符:用来操作整数基本数据类型中的单个“比特”(bit),即二进制位。按位操作符会对两个参数中对应的位执行布尔代数运算,并最终生成一个结果。

如果两个输入为都是1,则按位“与”操作符(&)生成一个输出位1,否则生成一个输出位0.如果两个输入位里只要有一个是1,则按位“或”操作符(|)生成一个输出位1;只有在两个输入位都是0的情况下,它才会生成一个输出位0.如果输入位的某一个是1,但不全都是1,那么按位“异或”操作(^)生成一个输出位1.按位“非”(~)),也称为取反操作符,它属于一元操作符,只对一个操作数进行操作(其他按位操作符是二元操作符)。按位“非”生成与输出位相反的值——若输入0,则输出1;若输入1,则输出0.

6)自动递增和递减:“--”递减、“++”递加。前缀式:执行递加/递减后赋值(执行运算后,再生成值)。后缀式:执行递加/递减前赋值(先生成值,再运算)。

按位操作符可与等号(=)联合使用,以便合并运算和赋值:&=、|=和^=都是合法的(由于“~”是一元操作符,所以不可与“=”联合使用)。

我们将布尔类型作为一种单比特值对待,所以它多少有些独特。我们可对它执行按位“与”、按位“或”和按位“异或”运算,但不能执行按位“非”(为了避免与逻辑NOT混淆)。

6)移位操作符:移位操作符的操作的运算对象也是二进制的“位”。移位操作符只可用来处理整数类型(基本类型的一种)。左移位操作符(<<)能按照操作符右侧指定的位数将操作符左边的操作数向左移动(在低位补0)。“有符号”右移位操作符(>>)则按照操作符右侧指定的位数操作符左边的操作数向右移动。“有符号”右移位操作符使用了“符号扩展”:若符号为正,则在高位插入0;若符号为负,则在高位插入1,。Java中增加了一种“无符号”右移位操作符(>>>),它使用了“零扩展”:无论正负u,都在高位插入0.

7)三元操作符 if-else:三元操作符也称为条件操作符,其表达式采取下述形式:

boolean-exp ? value0 ; value1

如果boolean(布尔表达式)的结果为true,就计算value0,而且这个计算结果也就是操作符最终产生的值。如果boolean-exp的结果为false,就计算value1,同样,它的结果也就成为了操作符最终产生的值。

8)关系操作符:“==”和“!=”才适用于boolean类型,因为boolean类型只存在true和false结果,其余关系操作符对它无用。“==”和“!=”对比的是对象的引用。equals()方法对比的是对象的值,但默认的行为也是对比引用,基本类型不适合这个方法,基本类型直接用“==”和“!=”就可以了。

9)逻辑操作符:“与”(&&)、“或”(||)、“非”(!)。生成boolean值(true或false)。

通常,表达式中出现的最大数据类型就决定了表达式的最终结果的数据类型,如果将一个float值与一个double值相乘,结果则为double类型,如果将一个int值与一个long值相加,则结果为long。

10)窄化转换:将能容纳更多信息的数据类型转换成无法容纳那么多信息的数据类型(强制转换)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: