public class 自己的笔记day003 {
public static void main(String[] args) {
//取模%(取余数)
System.out.println(x%y);
System.out.println("=============");
System.out.println(189%10); //结果为9
//整数相除(取商)
System.out.println(189/10); //结果为18
//混合使用
System.out.println(189/10%10);//结果为8
//定义字符串 (任何数据和字符串进行连接(+)都会变成字符串)
String a="Hello"
System.out.println(a+"World");//结果是HelloWorld
System.out.println(a+30);//结果是Hello30
System.out.println(5+5+5+"hehe"+5+5+5);//结果是15hehe555
//小括号的优先级最大
System.out.println((5+5+5)+"hehe"+(5+5+5));//结果是15hehe15
int nmb=10;
nmb++;//单独自成一行使用不管是前边++还是后边++效果不变
++nmb;
System.out.println(nmb);//结果11
System.out.println("==============");
//混合使用时,有【重大区别】
//A.如果是【前++】,那么变量【立刻马上+1】,然后拿着结果马上使用。【先加后用】。
//B.若果是【后++】,那么首先使用原来的数值,【然后再让变量加1】,【先用后加】。
//C. 【--】和【++】用法相同
int nmb1=10;
System.out.println(++nmb1); //结果11
System.out.println(nmb1);//结果11
System.out.println("==========");
int nmb2=10;
System.out.println(nmb2++);//结果10
System.out.println(nmb2);//结果11
//小题目
int x=10;
int y=20;
int result3 = ++x + y--;
System.out.println(result3);//结果为31
System.out.println(x);//结果为11
System.out.println(y);//结果为19
// 30 ++;//错误写法 (常量不可以使用自增自减)
/*复合赋值运算:
+= a += 1 相当于a = a + 1 相当于a被重新赋值为a + 1
-= b -= 2 相当于b = b - 2 ...
*= c *= 3 相当于c = c * 3 ...
/= d /= 4 相当于d = d / 4 ...
%= e %= 5 相当于e = e % 5 ... */
//注意事项:复合赋值运算隐含了一个强制类型转换:例子:
System.out.println("=============");
byte num = 30;
num += 5;
System.out.println(num);
System.out.println("=============");
//自动类型转换(右边的值范围比左边的小会进行自动类型转换) 例如:
long num1 = 100000;//100000是int变量 ,自动被转换为long变量。
double num2 = 200000000L;//200000000L是long变量,自动被转换为double变量。
System.out.println(num2);
/*与(并且) &&(短路与) 全都是true,才是frue,否则就是false
或(或者) ||(短路或) 至少一个是true,就是true;全都是false,才是false
非(取反) ! 本来是true,变成false;本来是false,变成true*/
System.out.println(true && false);// false
System.out.println(3<4 && 10>5);// true
System.out.println(true || false);// true
System.out.println(!true);//false//写在布尔值前方,单独使用
//短路的例子:
int a=10;
// false && ...(第一个不成立的话后边的不执行)
System.out.println(3 >4 && ++a < 100);
System.out.println(a);/*结果为10 ,a没有执行++a,因为&& 和 ||具有短路效果,当第一个结果为flase(3>4),
后边的命令不执行(++a < 100)。*/
/*三元运算符
格式:
数据类型 变量名 = 布尔表达式 ? 表达式A : 表达式B;
*/
}
} |
|