本周在西宁出差,周末刚好加班,所以没有更新。今天抽空补上。
操作妇:操作符接受一个或多个参数,并生成一个新值。参数的形式与普通的方法通用不同,但是效果相同。操作符包括加号和一元的(+)、减号和一元的(-)、乘号(*)、除号(/)以及赋值号(=)。
优先级:最简单的规则,先乘除再加减,程序中为了明确计算顺序,可以用括号进行明确。
赋值:赋值使用“=”,它的意思是“取右边的值,把它复制给左边”,右值可以是任何常量,变量或者表达式(只有它能生成一个值就行)。但左值必须是一个明确的,已命名的变量,也就是说,必须有一个物理空间可以存储等号右边的值。比如,可以将一个常理数赋给一个变量:a=4;但是不能把任何东西赋值给一个常数,常数不能作为左值。
自增,自减:通常也被叫做“前缀式”和“后缀式”,“前缀递增”表示“++”操作符位于变量或者表达式的前面,而“后缀递增”表示“++”操作符位于变量或表达式的后面。对于“前缀式”(++a,--a),会先执行运算,再生产值(先使用,后运算)。对于“后缀式”(a++,a--),会先生产值,再执行运算。如:
public static void main(String[] args) {
int i = 1;
System.out.println("i:"+i);//1
System.out.println("++i:"+(++i));//2,先计算值,再参与运算(打印)
System.out.println("i++:"+(i++));//2,先使用(参与运算(打印)),再计算
System.out.println("i"+i);//3
System.out.print("--i:"+(--i));//2
System.out.println("i--:"+(i--));//2
System.out.println("i:"+i);//1
}
比较:==比较是对象的引用,而对于equals()其默认行为也是比较引用,除非你自己去重写equals()方法。
“短路”现象:在使用逻辑操作符时,会有的一种情况,即一旦能够能明确无误地确定整个表达式的值,就不再计算表示式余下部分(短路)。
“类型提升”:通常表达式中出现的最大的数据类型决定了表达式最终的数据类型,如果将一个float值与一个double值相乘,结果 就是double,如果将一个int和一个long值相加,则结果为long。
第二周的就先写到这了,如果有些地方不对,欢迎大家指出来,共同进步。谢谢了先。