算术运算符
基本算术运算符:
+、-、*、/、%(加、减、乘、除、取余)
用法:
package demo01;
public class Demo {
public static void main(String[] args) {
int num1=30;
int num2=5;
int result = num1+num2;
System.out.println("求加的值:"+result);//结果为35
int result2 = num1-num2;
System.out.println("求减的值:"+result2);//结果为25
int result3 = num1*num2;
System.out.println("求乘的值:"+result3);//结果为150
int result4 = num1/num2;
System.out.println("求除的值:"+result4);//结果为6
int result5 = num1%num2;
System.out.println("求余的值:"+result5);//结果为0
}
}
自增、自减运算符
++、--
++或者--在变量前后的区别:
1、对于单个变量运算来说,++或--在前在后,都不会影响变量自增1或自减1
2、对于参与运算的变量来说,++或--在前,变量会先自增或自减1,在参与运算
3、对于参与运算的变量来说,++或--在后,变量会先参与运算,在进行自增和自减
int ber = 20;
int since = ++ber;
System.out.println("求自增值:"+since);//结果为21
int ber1 = 20;
int since1 = --ber1;
System.out.println("求自减值:"+since1);//结果为19
复合算术运算符
+=、-=、*=、/=、%=
复合运算符:需要对变量自身进行运算时,效率会高于算术运算符
例如:a=a+5 可以写成a+=5
int figure = 50;
figure +=50;
System.out.println("求加的值:"+figure);//结果为100
figure -=20;
System.out.println("求减的值:"+figure);//结果为80
figure *=2;
System.out.println("求乘的值:"+figure);//结果为160
figure /=5;
System.out.println("求除的值:"+figure);//结果为32
figure %=5;
System.out.println("求余的值:"+figure);//结果为2
关系运算符
>、<、>=、<=、==、==、!=
关系运算符的运算结果为布尔值(boolean)
boolean的值为:true(真)、false(假)
例如:
int figure1 =20;
int figure2 =15;
boolean compare = figure1>figure2;
System.out.println("figure:"+compare);
// 运算结果为:true
=为赋值运算符、==为等于运算值
>、<、>=、<= 运算符的优先值高于==、!=
>、<、>=、<= 运算符只支持数值类型的数据比较
使用Scanner获得键盘输入的数字的各个位数的数字
方法:
Scanner figure10 = new Scanner(System.in);
System.out.println("请输入会员卡号(4位):");
int digit = figure10.nextInt();
System.out.println("您输入的会员卡号:"+digit);
Scanner figure10 = new Scanner(System.in);
System.out.println("请输入会员卡号(4位):");
int digit = figure10.nextInt();
System.out.println("您输入的会员卡号:"+digit);
int gw = digit%10;
int sw = digit/10%10;
int bw = digit/100%10;
int qw = digit/1000%10;
System.out.println( "千位:"+qw+",百位:"+bw+",十位:"+sw+",个位:"+gw);
自动类型转换
小范围的数据存储到大范围的变量中
例如:
byte num = 20;
int num1 = num;
System.out.println(num1);
强制类型转换
大范围的数据存储到小范围的变量中。但是:可能存储的了,也可能大范围的数据超过小范围数据的范围造成数据精度丢失
int num = 20;
byte num1 = (byte)num;
System.out.println(num1)