java-0基础day-002-运算符

董卓| 阅读:1192 发表时间:2020-04-08 16:16:59 java
Java中值不能被修改的变量叫做常量
final float PI = 3.14f;
常量的名称全部大写(非必须的)

运算符:
1.赋值运算符 = :将=右边的值赋给左边
2.算术运算符
	-》基本算术运算符:+,-,*,/,%,++,--
	+,-,*,/,%:都是需要两个操作数来参与运算
	++,--:只需要一个操作数参与运算
	++放在操作数左边,表示先执行+1运算,再使用操作数
	++放在操作数右边,表示先使用操作数,再执行+1运算。
	--同理。
	-〉复合算术运算符:需要两个操作数来参与运算
	+=,-=,*=,/=,%=,==,!=

某学员3门课的成绩如下:
Java 98
C++  90
PHP  96

1.Java和C++的分数之差
2.求3门课的平均成绩

数据类型转换:只适用于数值类型的变量
1.自动类型转换
	=右边的数据可以自动转为=左边的数据,完成赋值
	如果=右边的数据范围小于=左边,则可以完成自动类型转换
2.强制类型转换
	如果=右边的数据范围大于=左边,则需要使用强制类型转换,
	会造成精度损失

int x = 8;
int y = 9;
System.out.print(x++==y);
System.out.print(x==y);

Demo:
让用户通过键盘输入4位数字的卡号,
求出4位卡号的每一个位数上的数字,打印输出,
并且求这4个数字的总和。

包:package
为了区分同名的Java类而存在的

1.使用工具类,让用户可以通过键盘输入数字,并且让Java程序接收到这个数字。
Scanner 类

数据类型转换:
1.自动类型转换
	=右边的数据的类型可以自动转为=左边的数据类型
	=右边的数据类型范围小于=左边
2.强制类型转换
	语法:=右边的数据前(转换之后的数据类型)
	会造成精度损失

用户通过键盘输入一个四位数,
分别求出该数字千位,百位,十位,个位的数值,求和。

1.让用户可以通过键盘输入数字,Java程序可以接收到该数字。
实现:Scanner
2.拆分该数字,求出各个位上的数值
通过算术运算符来实现

运算符:
1.算术运算符
2.赋值运算符 = 
3.关系运算符
4.逻辑运算符
5.条件运算符
6.位运算符

关系运算符:
判断一个表达式是否成立,结果只有两种:成立/不成立,boolean:true/false
==:判断==两边的操作数是否相等。
!=:判断不相等
只有== !=可以作用于任意的数据类型,其他的关系运算符只能作用于数值类型(整型,浮点型 byte,short,int,long,float,double)
>
<
>=
<=

逻辑运算符:
多个表达式之间的逻辑判断
&:与,&左右两边的表达式必须同时成立,结果为true,否则为false
|:或,|左右两边的表达式只要有一个成立,结果为true,|左右两边的表达式都不成立,结果为false
!:非,!右边的表达式成立,结果为false,!右边的表达式不成立,结果为true
&&:短路与 同& &&左边的结果为false,则不会执行&&右边的表达式
||:短路或 同| ||左边的结果为true,则不会执行||右边的表达式

int x = 8;
int y = 9;
System.out.println((++x==y)||(++x!=y));
System.out.println(x);

条件运算符:三元表达式,三目表达式,是用来给变量赋值的
语法:
数据类型 变量名 = 条件?数据1:数据2;
规则:条件成立,表达式1的结果赋给变量,
条件不成立,表达式2的结果赋给变量。

位运算符:对表达式以二进制为单位进行运算
十进制和二进制的转换。
十进制转为二进制:
	用数字除以2,求出余数,记做第一位,对商继续除以2,求出余数,记做第二位...
	直到商为零。

10:1010
9:1001
17:10001

二进制转为十进制:
	从右边起,该位的数值乘以该位的权重(2的该位顺序-1次方),依次累加。

1010:10
1001:9
10001:17

&按位与:将两个操作数转为二进制,每一位进行运算,两个数都为1,则该位记为1,以此类推。
|按位或:
^按位异或
<<左移
>>右移

如果参与运算的操作数是表达式,则&,|是与和或
如果参与运算的操作数是数值,则&,|是按位与或按位或