java练习-2021-01-05-01

package com.user.contact;

public class Test001 {
	public static void main(String[] args) {
		char x = 'x';
		int i1 = 10;
		System.out.println(true ? x : i1);
		System.out.println(true ? 'x' : 10);
//连续工作66小时,编程计算共多少天零多少小时?
		int hour = 66;
		int day = hour / 24;
		int hour1 = hour % 24;
		System.out.println(day + "天" + hour1 + "小时");
//		今天是周二,100天以后是周几?
		int weakDay = 2;
		weakDay += 100;
		weakDay = weakDay % 7;
		System.out.println("100天以後是星期:" + weakDay);
//		算术运算符的使用
		int a = 23;
		int b = 12;
		System.out.println(a + "+" + b + "=" + (a + b)); // 23 + 12 = 35
		int sum = a + b;
		System.out.println(a + "+" + b + "=" + sum);// 35
		int sub = a - b;// 11
		// System.out.println(a + "-" + b + "=" + a-b);//错误,原因是a + "-" + b + "=" +
		// a的结果是字符串,字符串不能进行减法
		System.out.println(a + "-" + b + "=" + (a - b));// a - b = 11
		System.out.println(a + "-" + b + "=" + sub);// a - b = 11

		int mul = a * b;// 276
		System.out.println(a + "*" + b + "=" + a * b);// a * b = 276
		System.out.println(a + "*" + b + "=" + mul); // a * b = 276
		System.out.println("**********************");
		// 整数相除,只保留整数部分
		int div = a / b; // 1
		System.out.println(a + "/" + b + "=" + a / b);// a / b = 1
		System.out.println(a + "/" + b + "=" + div);// a / b = 1

		double d = (double) a / b;// 先把a的类型进行转换,转换成double类型,然后再和b相除
		System.out.println(a + "/" + b + "=" + d);// a / b = 1.91

		int yu = a % b;
		System.out.println(a + "%" + b + "=" + yu);// a % b = 11

		System.out.println("------------------特殊的取模----------------------");
		System.out.println(5 % 2);// 1
		System.out.println(-5 % -2);// -1
		System.out.println(-5 % 2);// -1
		System.out.println(5 % -2);// 1

		System.out.println("-----------负号-----------");
		int num1 = 12;
		int num2 = -num1;
		System.out.println("num2=" + num2);// -12

		System.out.println("---------自增-----------");
		int i = 0;
		System.out.println("自增之前i=" + i);// 0
		i++;
		System.out.println("自增第一次之后i=" + i);// 1
		++i;
		System.out.println("自增第二次之后i=" + i);// 2
		int j = ++i;// 把i自增1,然后结果赋值给j,或者说,先算++i,然后再赋值
		System.out.println("自增第三次之后i=" + i);// 3
		System.out.println("j=" + j);// 3
		int k = i++;// 先算赋值,把i的值赋值给k,i原来是3,把3赋值给k,然后i在自增1,i变成4
		System.out.println("自增第四次之后i=" + i);// 4
		System.out.println("k=" + k);// 3

		// 陷阱题
		i = i++;// 先赋值,把i原来的值重新赋值给i,不变,然后i自增,但是这个自增后的值没有在放回变量i的位置
		System.out.println("自增第五次之后i=" + i);// 4

		int x2 = 0, y = 1;
		if (++x2 == y-- & x2++ == 1 || --y == 0)
			System.out.println("x=" + x2 + ",y=" + y); // x2 = 2,y = 0;
		else
			System.out.println("y=" + y + ",x2=" + x2);
//		编写代码实现两个变量值交换,int m = 10, n =2
		int m = 10, n = 2;
//		方法一
		int temp = m;
		m = n;
		n = temp;
		System.out.println("m = " + m + " n = " + n);
//		方法二
		int m1 = 10, n1 = 2;
		m1 += n1;// 12
		n1 = m1 - n1;// 10
		m1 = m1 - n1;// 2
		System.out.println("m1 = " + m1 + " n1 = " + n1);
//方法三  相同二进制位进行 ^ 运算,结果是0;1^1=0 , 0^0=0 不相同二进制位 ^ 运算结果是1。1^0=1 , 0^1=1 
		int m2 = 10, n2 = 2;
		m2 = m2 ^ n2;
		n2 = m2 ^ n2;
		m2 = m2 ^ n2;
		System.out.println("m2 = " + m2 + " n2 = " + n2);
//		22的转制
		String str1 = Integer.toBinaryString(22);
		String str2 = Integer.toHexString(22);
		System.out.println("str1的二进制:" + str1);
		System.out.println("str2的16进制是" + str2);
//		摄氏度与华氏度转换
		int h = 90;
		double c = (h - 31) / 1.8;
		System.out.println(h + "华氏度,是摄氏度" + c);
		System.out.println(h + "华氏度,是摄氏度" + Math.round(c));
//		前++,后++,三元运算符
		int a0 = 3, b0 = 8;

		int c0 = (a0 > b0) ? a++ : b0++;// b=9
		System.out.println("a0=" + a0 + "\tb=" + b0 + "\tc=" + c0); // 3 9 8

		int d0 = (a0 > b0) ? ++a0 : ++b0;//
		System.out.println("a0=" + a0 + "\tb=" + b0 + "\td=" + d0); // 3 10 10

		int e0 = (a0 < b0) ? a0++ : b0++;
		System.out.println("a0=" + a0 + "\tb=" + b0 + "\te=" + e0); // 4 10 3

		int f0 = (a0 < b0) ? ++a0 : ++b0;
		System.out.println("a0=" + a0 + "\tb=" + b0 + "\tf=" + f0); // 5 10 5
//		short s1 = 1;
//		s1 = s1 + 1;
//		short s2 = 1;
//		s2 += 1;

	}

运行结果:

120
x
218小时
100天以後是星期:4
23+12=35
23+12=35
23-12=11
23-12=11
23*12=276
23*12=276
**********************
23/12=1
23/12=1
23/12=1.9166666666666667
23%12=11
------------------特殊的取模----------------------
1
-1
-1
1
-------------负号------------
num2=-12
-------------自增-------------
自增之前i=0
自增第一次之后i=1
自增第二次之后i=2
自增第三次之后i=3
j=3
自增第四次之后i=4
k=3
自增第五次之后i=4
x=2,y=0
m = 2 n = 10
m1 = 2 n1 = 10
m2 = 2 n2 = 10
str1的二进制:10110
str2的16进制是16
90华氏度,是摄氏度32.77777777777778
90华氏度,是摄氏度33
a0=3	b=9	c=8
a0=3	b=10	d=10
a0=4	b=10	e=3
a0=5	b=10	f=5

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值