赋值方式
整数赋值方式
-
十进制赋值:最常用的赋值方式
方法:int num=值; -
二进制赋值:以0B或者0b开头,后接二进制的值
方法:int num=0B1011; -
八进制赋值:以0开头后接八进制的值
方法:int num=014; -
十六进制赋值:以0X或0x开头,后接一个十六进制的值
方法:int num=0X2a; -
分割符赋值:当要赋的值很大时会通过分隔符分割赋值
方法:int num=123_456_789;
public class Demo01{
public static void main(String[] args){
//十进制赋值
int num=10;
//二进制赋值
num=0b101;
System.out.println("二进制的值是:"+num);
//八进制赋值
num=013;
System.out.println("八进制的值是:"+num);
//十六进制赋值
num=0x3A;
System.out.println("十六进制的值是:"+num);
num=123_456_789;
System.out.println("num="+num);
}
}
小数赋值方式
- 正常赋值:最常用的方法;
double d=12.12; - 科学计数法:数值E/e 整数;
double d=0.000314;
double d=3.14E-4;
public class Demo02{
public static void main(String[] args){
//正常赋值
double d=12.1;
d=0.0000314;
System.out.println("d的值是:"+d);
//科学计数法
d=3.14E-5;
System.out.println("d的值是:"+d);
}
}
数据类型
小数
-
计算机存储小数时一个近视值,不是精确值
-
Java中的小数的默认类型是double类型,如果要将double类型的值赋值给float类型时,需要在值的后面加"F"“f”
-
以下三种特殊的需要注意
System.out.println(10/0.0);//输出结果为正无穷 System.out.println(-10/0.0);//输出结果为负无穷 System.out.println(-0.0/-0.0==0.0/0.0);//结果为NaN(自己都不等于自己)
逻辑类型:
- 布尔类型的变量不能参与四则运算,适用于逻辑判定,流程控制。
public class Demo03{
public static void main(String[] args){
//声明一个boolean类型
boolean flag=true;
System.out.println("flag的值是:"+flag);
//声明一个int类型的变量存放3+5的值
byte a=3;
short b=5;
int num=a+b+flag;
}
}
字符型
-
给char类型变量赋值时一定要注意是单引号引起来的单个字符。
-
’ '代表的是字符; " "代表的是字符串。
-
Java中之所以可以使用中文是因为Java采用的是unicode字符集。
-
char类型是可以直接赋值整数(包含0),也可以参与四则运算
-
转义字符:通过转义符\转变含义。方法:+要转义的字符.
public class Demo04{
public static void main(String[] args){
//声明char类型变量
char ch=98;//将字符B赋值给char类型变量ch存放
System.out.println(ch+1);
//java采用的是Unicode u十进制的数
ch='\u0011';
System.out.println("---"+ch+"---");
//输出'
ch='\'';
System.out.println("---"+ch+"---");
//使用转义字符
ch='\t';
System.out.println("---"+ch+"---");
}
}
数据在计算机的存储方式
数据在计算机中存储的方式都是转换为二进制存储
整数
-
原码表示
-
反码表示
正数的反码和原码一致;负数的反码是原码取反,符号位除外
-
补码表示
正数的补码和原码一致;负数的补码是反码加一
Tips:原码表示法在进行减法运算时会出现问题;反码表示则是会区分±0,但实际上±0都是0;补码表示则比较完善。
小数
十进制数在转换为小数的时候会出现精度问题