java se两个数相除_JAVA_SE变量和运算符

java中的数据类型分为两大类:

一、基本数据类型 (4类8种):

①整型(byte,short,int[默认类型],long),他们之间取值范围不同

②浮点型(float,double[默认类型]),他们之间取值范围不同

③字符型(char)

④布尔型(boolean)

二、引用数据类型,从数组开始接触

常见进制,字符,转义符:

1.进制(二进制,八进制,十进制,十六进制)

同一个块内,不能声明同名变量

变量的作用域:变量的有效范围,从声明它的位置开始,到它所在的块结束

算术运算符

1.算术运算符: +、﹣、*、/、%、++、 --

// + : 如果+两侧是数值表达式,做的就是加法;如果+有一侧有字符串,加号就是连接符号

// System.out.println(5+6+7);// 18

// System.out.println(5+"6"+7);// 567

// System.out.println(5+6+"7");// 117

// System.out.println(5+6+'7');// 66

// System.out.println(5+","+6);// 5,6

2.整型与整型相除,结果还是整型(取整,不是四舍五入)

// System.out.println(11/3); // 3

// System.out.println(11.0/3);// 3.6666666666666665

// System.out.println(11/3.0);// 3.6666666666666665

% 取余数(模运算):结果的正负,只与被除数有关

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(4%5);//4

自增,自减

++在后,先运算,再自增 。 --在后,先运算,再自减

++在前,先自增,在运算 。 --在前,先自减,在运算

i++;// i = i + 1; i + = 1;

i--;// i = i - 1; i - = 1;

例:

int num1 = 20;

int num2 = 30;

System.out.println((num1++)+num2);// 50

System.out.println(num1+","+num2);// 21,30

System.out.println((num1++)+num2++);// 51

System.out.println(num1+","+num2);// 22,31

System.out.println((num1++)+(++num2));// 54

System.out.println(num1+","+num2);// 23,32

逻辑运算符

逻辑运算符:&&与、||或、!非

比较运算符:>、=、 <=、==、!=

赋值运算符:=、+=、﹣=、*=、/=、%=

位运算符: &、|、^ 、 ~、>>、<>>(pass)

按位与& , 按位或 | 和 逻辑与 &&,逻辑或 || 都能进行逻辑判断

// 按位与&,按位或|能够参与位运算**(位运算:针对的是二进制整数)**

// & :只有参加运算的两位都为1,&运算的结果才为1,否则为0

/*

* 101 5

110 6

----------

100 4

*/

// System.out.println(5&6);

// System.out.println(3&5);

// | :只有参加运算的两位都为0,|运算的结果才为0,否则为1

/*

* 101 5

110 6

----------

111 7

*/

// System.out.println(5|6);

// ^:只有参加运算的两位不同,^运算的结果才为1,否则为0

/*

* 101 5

110 6

---------

011 3

*/

// System.out.println(5^6);

// << :a<

// 3*2^2 = 12

// 5*2^3 = 40

// 4*2^4=64

// a<

// System.out.println(4<<4);

// >> : a>>b 64/(2^2) 128/(2^3)

// a>>b等效于a/(2^b)

// System.out.println(128>>3);

// int num = 2; "以效率最高的形式变成8"

// int num = 2;

// num = num<<2;

// System.out.println(num);

&,|和&&,||有什么异同

1.都能参与逻辑运算

2.&,|还能参与位运算,&&,||不能

3.&&,||有短路性,&,|没有

三元运算符

条件运算符(三元运算符): (?:)

(表达式1)?( 表达式2): (表达式3)

**当表达式1是true时,返回表达式2,否则返回表达式3 **

int num = 1451 > 999 ? 0 : 1;

类型转换

1.自动类型转换 :两种类型彼此兼容的,目标类型取值范围大于原类型

2.强制类型转换:两种类型彼此不兼容的,目标类型取值范围小于原类型

将目标强行加上类型:

char ch='G';

ch =(char)(ch+32);

System.out.println("输出字符为:"+ch);

运算时的兼容

byte short char int 运算方向为int

向范围大的方向兼容

+=(直接转换),有自动转换,无需强转

获取数据

Scanner scanner=new Scanner(System.in);

int scanner=new Scanner.nextInt();

nextInt()获取数字。

nextDouble()获取双精度数字。

nextLine()获取字符,可以是空格。

next()代表只要有空格就结束。

你可能感兴趣的:(java,se两个数相除)