13260人加入学习
(67人评价)
Java编程学习第一季

制作于2018年2月8日

价格 免费
/*
9
原码:00000000 00000000 00000000 00001001
-9
原码:10000000 00000000 00000000 00001001
反码:11111111 11111111 11111111 11110110
补码:11111111 11111111 11111111 11110111
7
原码:00000000 00000000 00000000 00000111
-7
原码:10000000 00000000 00000000 00000111
反码:11111111 11111111 11111111 11111000
补码:11111111 11111111 11111111 11111001
*/
public class BitOperator{
	public static void main(String[] args){
		System.out.println(9&7);
		System.out.println(9&-7);
		System.out.println(-9&-7);
		System.out.println(-9|-7);
		System.out.println(~-9);
		System.out.println(-9^-7);
		System.out.println(-9<<3);
		System.out.println(-9>>3);
		System.out.println(-9>>>3);
	}
}

 

[展开全文]
/*
9
原码:00000000 00000000 00000000 00001001
-9
原码:10000000 00000000 00000000 00001001
反码:11111111 11111111 11111111 11110110
补码:11111111 11111111 11111111 11110111
7
原码:00000000 00000000 00000000 00000111
-7
原码:10000000 00000000 00000000 00000111
反码:11111111 11111111 11111111 11111000
补码:11111111 11111111 11111111 11111001
*/
public class BitOperator{
	public static void main(String[] args){
		System.out.println(9&7);
		System.out.println(9&-7);
		System.out.println(-9&-7);
		System.out.println(-9|-7);
		System.out.println(~-9);
		System.out.println(-9^-7);
	}
}

 

[展开全文]

1234

 

B F D H

int bit folt sotr long char boller

int bat sotr long

[展开全文]

位运算符

计算机是二进制的,所有的数据使用二进制来存储。对于每个二进制来说都有原码、反码和补码。计算机存储数据的时候,使用第一位表示数字的正负,0代表正数,1代表负数。计算机存储正数的时候直接存储正数的原码,存储负数的时候存储负数的补码。(为什么存储补码,而不是原码,这个是为了方便进行数学运算,具体不解释了)

正数:原码、反码和补码相同。

负数:

原码(符号位为1)

反码(符号位不变,其余位数取反)

补码(反码+1)

 

只针对二进制来说的,所以在进行运算之前会转换成二进制,再运算。

& 按位与:对应位都是1才是1

| 按位或:对应位有一个1,就是1

~ 按位取反:1变0,0变1

^ 按位异或:对应位不一样才是1

<< 左移(高位抛弃,低位补0)

>> 右移(高位按照符号位补齐,低位抛弃)

>>>无符号右移(忽略符号位,高位补0,低位抛弃)

 

[展开全文]
public class LogicalOperator{
	public static void main(String[] args){
		//int age = 80;
		//boolean isAdult = age >= 18;
		//boolean isZhong = age >= 25 && age <= 35;// &&与
		//boolean isZhong = 25<= age <=35;// 错误
		//boolean isCannotPlay = age<=17 || age>=80;// ||逻辑或 或者 or
		//System.out.println(isCannotPlay);
		//System.out.println(isAdult);
		//System.out.println(isZhong);
		//int a = 8,b = 3, c = 9;
		
		//System.out.println(a>b && a>c);
		//System.out.println(a>b && a<c);
		//System.out.println(a<b && a>c);
		//System.out.println(a<b && a<c);
		
		//System.out.println(a>b & a>c);
		//System.out.println(a>b & a<c);
		//System.out.println(a<b & a>c);
		//System.out.println(a<b & a<c);
		
		//System.out.println(a>b || a>c);
		//System.out.println(a>b || a<c);
		//System.out.println(a<b || a>c);
		//System.out.println(a<b || a<c);
		
		//stem.out.println(a>b ^ a>c);
		//System.out.println(a>b ^ a<c);
		//System.out.println(a<b ^ a>c);
		//System.out.println(a<b ^ a<c);
		
		//System.out.println(!(a>b) );//true
		//System.out.println(!(a<b) );//false
		
		int a = 10, b = 10;
		System.out.println(a>20 && (b++)>11);
		System.out.println(b);
		
	}
}

 

[展开全文]
public class LogicalOperator{
	public static void main(String[] args){
		int age = 80;
		//boolean isAdult = age >= 18;
		//boolean isZhong = age >= 25 && age <= 35;// &&与
		//boolean isZhong = 25<= age <=35;// 错误
		boolean isCannotPlay = age<=17 || age>=80;// ||逻辑或 或者 or
		System.out.println(isCannotPlay);
		//System.out.println(isAdult);
		//System.out.println(isZhong);
		int a = 8,b = 3, c = 9;
		//System.out.println(a>b && a>c);
		//System.out.println(a>b && a<c);
		//System.out.println(a<b && a>c);
		//System.out.println(a<b && a<c);
		
		//System.out.println(a>b || a>c);
		//System.out.println(a>b || a<c);
		//System.out.println(a<b || a>c);
		//System.out.println(a<b || a<c);
		
		//stem.out.println(a>b ^ a>c);
		//System.out.println(a>b ^ a<c);
		//System.out.println(a<b ^ a>c);
		//System.out.println(a<b ^ a<c);
		
		System.out.println(!(a>b) );//true
		System.out.println(!(a<b) );//false
	}
}

 

[展开全文]

逻辑运算符(两边的操作数必须是boolean类型的)

规则:操作数 1 运算符  操作数 2

&& (短路 与)

||   (短路 或)

&

|

^ 异或

!非(取反)

与:两边同时满足条件的时候为true(其他情况为false)

或:两边只要满足一个条件结果为true(其他情况为false)

异或:两边结果不一样的时候结果为true(其他情况为false)

短路和不短路的区别

当可以通过操作数1判断出来的结果的时候,是否运算操作符2(短路表示不运算操作数2)

public class LogicalOperator{
	public static void main(String[] args){
		int age = 80;
		boolean isAdult = age >= 18;
		//boolean isZhong = age >= 25 && age <= 35;// &&与
		//boolean isZhong = 25<= age <=35;// 错误
		System.out.println(isAdult);
		System.out.println(isZhong);
	}
}

 

[展开全文]

比较运算符

        结果为boolean类型 (true/false)

        <

        <=

        >

        >=

        ==

         !=

         注意区分== 和=

System.out.println(a==b);
System.out.println(a=b);
public class CompareOperator{
	public static void main(String[] args){
		int a = 10;
		int b = 2;
		System.out.println(a<b);
		System.out.println(a<=b);
		System.out.println(a>b);
		System.out.println(a>=b);
		System.out.println(a==b);
		System.out.println(a!=b);
		System.out.println('a'<'b');
		int c = 'a';
		System.out.println(c);
	}
}

 

[展开全文]

赋值运算符:
    =   +=   -=  *=   /=   %=

   a = 3; a = a + b;

   x = y = z = 7;//不建议
   
   a x = b; ======> a = a x b x代表 + - * / %
public class Assignment{
	public static void main(String[] args){
		int a = 3;
		int x,y,z;
		x = y = z = 4;
		a += 4;//a = a +4; 
		System.out.println(a);
		a -= 5;
		System.out.println(a);
		a *= 4;
		System.out.println(a);
		a /= 2;
		System.out.println(a);
		a %= 7;
		System.out.println(a);
	}
}

 

[展开全文]

自增和自减运算符

++

      两种用法:放在前面或者放在后面

-- 

     两种用法:放在前面或者放在后面

public class ZiZeng{
	public static void main(String[] args){
		//int a=9 b=5;
		int a = 9;
		int b = 5;
		//a++;
		//b--;
		//++a;
		//--b;
		//int res1 = a++;
		//int res2 = ++b;
		int res1 = a++ + 1;
		int res2 = ++b + 2;
		System.out.println(a);
		System.out.println(b);
		System.out.println(res1);// res1 = a; a++;
		System.out.println(res2);// b++; res2 = b;
        System.out.println(a++);
        System.out.println(++b);
	}
}

 

[展开全文]

特殊1:

使用浮点数做运算的时候的不精确性

5.3-4.2

0.08f+0.01f

6.9*7

7.6%2.0

原因:doble和float两个类型在Java中本身就是非精确存储的,再用两个近似值去做计算,得到的结果就只能是一个近似值了

特殊2:

可以使用+对字符串进行组拼,任何类型和字符串相加都会把数据转换成字符串,在进行组拼

a+b+"Hello"

"Hello"+a+b

特殊3:

使用字符做算数运算的时候,会自动把字符转换成对应的数字,然后进行数学运算

public class MathOperator{
	public static void main(String[] args){
		int a = 10;
		int b = 3;
		System.out.println(a+b);
		System.out.println(a-b);
		System.out.println(a*b);
		System.out.println(a*1.0/b);
		System.out.println(a%b);//取得除法运算的余数
		System.out.println(5.3-4.2);
		System.out.println(0.08f+0.01f);
		System.out.println(6.9*7);
		System.out.println(7.6%2.0);
		System.out.println("Hello"+"World");
		System.out.println(34+"World");
		System.out.println(34+"");
		System.out.println(34+""+34);
		System.out.println(""+34+34);
		System.out.println(""+(34+34));
		System.out.println(34+34+"");
		System.out.println(34+34);
		System.out.println(34+"34");
		System.out.println(34+'a');
	}
}

 

[展开全文]

算数运算符(可以对常量和变量进行操作):

规则:操作数1 运算符 操作符2 

int b = a + c;

     可以对整数和浮点数做加法操作

-

     可以对整数和浮点数做减法操作

*

     可以对整数和浮点数做乘法操作

/

    可以对整数和浮点数做除法操作

(两个整数相除得到的还是整数 = 略去小数部分 )

如果想要得到小数,需要将其中一个转成浮点数

%

   可以对整数和浮点数做求余操作

public class MathOperator{
	public static void main(String[] args){
		int a = 10;
		int b = 3;
		System.out.println(a+b);
		System.out.println(a-b);
		System.out.println(a*b);
		System.out.println(a*1.0/b);
		System.out.println(a%b);//取得除法运算的余数
	}
}

 

[展开全文]

变量注意事项:

作用域(有效范围):定义在哪个大括号内有效。不能同名在同一个作用域里面

在使用之前初始化

一行可以定义多个变量,两种写法

一行多条语句

一行一条语句

常量:

在运行期间一直不会改变的量成为常量!

一、字面值常量

二、自定义常量

自定义常量(一般常量名称都全部大写)

final 数据类型 常量名称 = 值

定义long或者float类型的时候要加上l(L)和f(F)

定义byte 或者 short的时候要保证给的值在类型范围内

char是否可以存储汉字

可以的,因为char占有两个字节,每个汉字也是占用两个字节的

[展开全文]

计算机使用的是二进制语言,由电子元器件组成的硬件系统。

B=byte  b=bit

bit 位 : 0或1

byte = 8bit 字节:

kb = kbyte = 1024 byte

mb = MB = mbyte =k kbyte = k kb = 1024kb

gb = GB = gbyte = K MB = 1024MB

T = 1024 GB

[展开全文]

进制:是一种表示数字的方式,默认我们平时使用的数字使用的十进制

 

[展开全文]

public class LogicalOperator{

    public static void main(string[] args){

        int a=8.b=3,c=9;

        boolean is CannotPlay = age<=17||age>=80;// ||逻辑或 或者 or

        System.out.println(isCannotPlay);//true

        System.out.println( a>b && a>c);//T&&F

        System.out.println( a>b && a<c);//T&&T

        System.out.println( a<b && a>c);//F&&F

        System.out.println( a<b && a<c);//F&&T

        

        System.out.println( a>b || a>c);

        System.out.println( a>b || a>c);

        System.out.println( a>b || a>c);

        System.out.println( a>b || a>c);

    }

}

[展开全文]

授课教师

SiKi学院老师

课程特色

下载资料(1)
视频(98)