一. java数据类型
Java的数据类型分为两种。 一个是原始数据类型(8种),另一个是引用数据类型),也就是类的类型。
原始数据类型分为8种,每个基本类型都有各自的包装类(wrapper class )。 也就是说:
字节短-短-短-整数长-长
浮动双精度-双精度字符-字符布尔-布尔
注意:每个对应的包装器类都有一个将字符串转换为基本类型的方法,该方法用于将字符串转换为对应的静态常量包装器类。 引用数据类型分为数组、类和接口三种
本文主要是对java运算符的说明,在前一篇文章中详细介绍了java数据类型。
二. java运算符
1、算术运算符:- */%
2、关系算子Java有完美的关系算子。 这些关系运算符基本上与数学中的关系运算符一致。
" "大,"="以上,"="以下,"=="相等,"!=”不等于。
三四种逻辑运算符,它们是NOT (非,符号“! "、AND (和符号“”、“”表示,) OR )或符号“||”、“|”表示)、XOR ) )异或、^ )
4、移位运算符的面向对象也是二进制的“位”。 int型数据可以单独用移位运算符处理。
它主要包括左移运算符()、“无符号”右移运算符)
5、赋值运算符是程序中最常用的运算符。 如果有变量的宣言,就需要赋值运算。
例如a=3; 我知道这里的a是变量名。 根据前面的变量定义,您可以看到这里的a实际上是内存空间的名称。
这对应于存储器空间,一个在该空间中输入3的值。 放入这个的过程实现赋值的过程。
6、条件运算符(三目运算符) expression1? expression2: expression3expression 1是布尔条件,其值运行true或false true:expression2false:expression 3
三、接下来是一些应用
1、//用于求商的值,% :用于求馀。 这是我们知道的。
例如,求出int num=1234求出该4位,1000个是每一位的数字:
int thousand=num/1000; //千人
int hundred=num/100; //百位,可以这样求的int hundred=num00/100;
int ten=num/10; //10位,int ten=num0/10
int bite=num; //一位
2、数字的默认类型为int,但有特殊的
字节b=56;
char c=55;
system.out.println(「b=”b”,c=” c )//不报告错误!
byte b2=300; //这是错误的报告,超出数值范围
int i=12;
byte b3=i; //这也报告错误。 必须用力转动才能使用
3、java整数值有二进制0b、八进制0、十进制、十六进制0x四种表现方法
例如:
int num1=0b11; //2*1 1=3
int num2=027; //8*2 7=23
int num3=333; //333
int num4=0x4A; //16*4 10=74
system.out.println(「num1=”num1”,num2=” num2”,num3=” num3”,num4=” num4”
//输出结果: num1=3,num2=23,num3=333,num4=74
4、关于char文字char C1=’44’; char c2=44; char C2=’ u 9999’你知道吗?
直接输出后,c1=44、c2=、c3=香
第一,用原来类型的数值输出文字型数据
第二个是按照ask||代码转义,输出字符型数据,范围从0到127
第三种方法是根据Unicode编码值进行转义,以输出字符类型数据。 u num; num的值范围从0000开始?都是4位数值,可以输入世界上任何语言的符号和几个特殊符号。 如果需要,您需要自己在互联网上查找具体的Unicode代码值
5、特殊计数方法:
科学计数法: float f=5.12e2f; 表示5.12*10的10次方,输出后,f=512.0
double也是同样的使用方法
6、正无限大、负无限大、非数,你知道吗?
正无限大PISITIVE_INFINITY
负无限大NEGATIVE_INFINITY
非数NaN Not a Number
的缩写那到底什么时候会出现呢?我们都知道除数不能为零,但是特殊情况可以为零,这些特殊情况就会出现上面三种情况
直接输出 int num1=5/0; int num2= -5/0; int num3=5%0;任意一个都会报错
输出double num1=5.0/0; doublenum2= -5.0/0; double num3=5.0 %0
结果double num1=Infinity; double num2=- Infinity ; double num3=NaN ;
7、逻辑运算符(||和|)、(&&和&)的区别
通过两个程序,就可以看出它们的区别
程序1
intnum1=3,num2=4,num3=5;
if(num1>num2 && num2>num3++){
空方法
}
System.out.println(“num3=”+num3);
//输出结果为5,num3 的值不变,因为判断第一个表达式为false后,结果肯定是false的,第二个表达式不会判断的
如果把上面的&&改为&
System.out.println(“num3=”+num3);
//输出结果为6,num3 的值加1了,判断第一个表达式为false后,第二个表达式还会判断的
程序2
if(num1>num2 || num2>num3++){
空方法
}
System.out.println(“num3=”+num3);
//输出结果为5,num3 的值不变,因为判断第一个表达式为true后,结果肯定是true的,第二个表达式不会判断的
如果把上面的 || 改为 |
System.out.println(“num3=”+num3);
//输出结果为6,num3 的值加1了,判断第一个表达式为true后,第二个表达式还会判断的
思考题:
int num=10;
if(++num>5){
num+=++num;
System.out.println(“num=”+num++);
}
输出后结果是:?
java程序运算符优先级图表:
标签:java,num1,num2,num3,int,数据类型,运算符,num
来源: https://blog.csdn.net/Dr_abandon/article/details/110949998