003运算符

运算符

算术运算符

赋值运算符

逻辑运算符

比较运算符

位运算符

三元运算符

image-20210110185907882

i = 10 i1 = 11

i = 12 i1 = 12

i = 20 i2 = 19

i = 18 i2 = 18

image-20210110185941003

class AriTest01 {
	public static void main(String[] args){
		int result = 153;
		int result01 = result / 100;
		int result02 = result % 100 / 10;
		int result03 = result % 10;

		System.out.println("result = " + result);
		System.out.println("百位数 = " + result01);
		System.out.println("十位数 = " + result02);
		System.out.println("个位数 = " + result03);
	}
}

逻辑运算符

image-20210110190114091

image-20210110190127224

image-20210110190306909

位运算符

image-20210110190332399

image-20210110190351819

三元运算符

class AriTest02 {
	public static void main(String[] args){
		int result = 18;
		String result01 = (result >= 18) ? "您已成年!" : "尚未常年!";
		System.out.println(result01);
	}
}

练习1:今天是周二,100天以后是周几?

/*
今天是周二,100天以后是周几?

*/
class AriTest04 {
	public static void main(String[] args){
		int week = 2;
		int day = 100;
		int residualDay = week + day % 7;
		System.out.println(day + "天后星期" + residualDay);

	}
}

练习2:十进制转十六进制

如何求一个0~255范围内的整数的十六进制值,例如60的十六进制表示形式3C
//方式一:自动实现
String str1 = Integer.toBinaryString(60);
String str2 = Integer.toHexString(60);

//方式二:手动实现
int i1 = 60;
int i2 = i1&15;
String j = (i2 > 9)? (char)(i2-10 + 'A')+"" : i2+"";
int temp = i1 >>> 4;
i2 = temp & 15;
String k = (i2 > 9)? (char)(i2-10 + 'A')+"" : i2+"";
System.out.println(k+""+j);

练习3:华氏度转摄氏度

image-20210110204727027

//小明要到美国旅游,可是那里的温度是以华氏度为单位记录的。       
//它需要一个程序将华氏温度(80度)转换为摄氏度,并以华氏度和摄氏度为单位分别显示该温度。       
public  static void main(String[] args) {            
    int  h = 80;            
    double  s = (h - 32) / 1.8;            
    System.out.println(h  + "华氏度,是摄氏度" +  Math.round(s));       
}

Math.round() 参数的值四舍五入到最接近int的值

练习3:写出执行结果

class AriDemo01 {
	public static void main(String[] args){
		int a=3,b=8;
		int c=(a>b)?a++:b++;
		System.out.println("a="+a+"\tb="+b+"\tc="+c);  // a=3   b=9   c=8

		int d=(a>b)?++a:++b;
		System.out.println("a="+a+"\tb="+b+"\td="+d);  // a=3   b=10   c=10

		int e=(a<b)?a++:b++;
		System.out.println("a="+a+"\tb="+b+"\te="+e);  // a=4   b=10   e=3

		int f=(a<b)?++a:++b;
		System.out.println("a="+a+"\tb="+b+"\tf="+f);  // a=5   b=10   f=5

	}
}

注意点:char类型与数值类型在三元运算符中,会自动将char转为int类型

	public static void main(String[] args) {
		char x = 'x';
		int i = 10;
		System.out.println(true? x : i);//120
		System.out.println(true? 'x' : 10);//x
	}
posted @ 2021-01-16 09:12  Py-JS  阅读(167)  评论(0编辑  收藏  举报