1、
public class DataDemo2 {
public static void main(String [] args){
char c1=‘A‘;
char c2=97;
char c3=‘\u0041‘;
char c4=65;
System.out.println(c1);
System.out.println(c2);
System.out.println(c3);
System.out.println(c4);
} }
2、
public class LuoJiTest{
public static void main(String [] args){
int num1=20;
int num2=30;
System.out.println("短路与:"+((num1>num2)&&(num1>10))); System.out.println((num1>num2)||(num1>10));
System.out.println(!(num1>num2));
System.out.println((num1>num2)&(num1>10));
System.out.println((num1>num2)|(num1>10));
System.out.println((num1>num2)^(num1>10));
}}
3、
public class WeiFei{
public static void main(String [] args){
int num1=8;
/* 符号位:0代表整数 , 1代表负数
0000 0000 0000 0000 0000 0000 0000 1000
取反: 1111 1111 1111 1111 1111 1111 1111 0111
得到负数的补码:(符号位不变,其他的都取反)
1111 1111 1111 1111 1111 1111 1111 0111
1000 0000 0000 0000 0000 0000 0000 1000
负数的补码+1:
1000 0000 0000 0000 0000 0000 0000 1000 + 1
--------------------------------------------------------------------
1000 0000 0000 0000 0000 0000 0000 1001---->-9
*/
System.out.println(~8); }}
4、
public class WeiHuoTest{
public static void main(String [] args){
int num1=10;
int num2=8;
/* num1:10
0000 0000 0000 0000 0000 0000 0000 1010
num2:8
0000 0000 0000 0000 0000 0000 0000 1000
-----------------------------------------------------
0000 0000 0000 0000 0000 0000 0000 1010
0000 0000 0000 0000 0000 0000 0000 1000
-----------------------------------------------------
0000 0000 0000 0000 0000 0000 0000 1010------>10
*/
System.out.println(num1|num2); }}
5、
public class YiHuoTest{
public static void main(String [] args){
int num1=10;
int num2=8;
/* num1:10 0000 0000 0000 0000 0000 0000 0000 1010
num2:8 0000 0000 0000 0000 0000 0000 0000 1000
-----------------------------------------------------
0000 0000 0000 0000 0000 0000 0000 1010
0000 0000 0000 0000 0000 0000 0000 1000
-----------------------------------------------------
0000 0000 0000 0000 0000 0000 0000 0010------>2
(运算规则:位运算中“异或”运算,如果两个数据对应位都是1,则c的该位是1,否则是0。) */
System.out.println(num1^num2); }}
6、
public class YiWei{
public static void main(String [] args){
int num1=8;
/* 0000 0000 0000 0000 0000 0000 0000 1000 向右移2位 */
System.out.println(num1>>2);
System.out.println(num1<<2); }}
/*
int num1=-10 原码-》反码-》补码-》移位
1000 0000 0000 0000 0000 0000 0000 1010--原码
找反码:原码的符号位不变,其余的取反
1111 1111 1111 1111 1111 1111 1111 0101--反码
补码是:反码+1
1111 1111 1111 1111 1111 1111 1111 0110--补码
得到补码后,对补码进行移位(反移位运算)向右移两位后为:
0011 1111 1111 1111 1111 1111 1111 1101--移位后的(正数) 是正数,也就是原码了。
0011 1111 1111 1111 1111 1111 1111 1101---正数原码
*/