Java中变量和数据类型
变量
变量中分为3中数据形态:
1、局部变量
2、属性 | 成员变量 | 实例变量
3、静态属性 | 类变量
定义变量
1、定义变量/标识符:数字、字母、下划线、$、
注意:不能用数字开头、不建议用下划线( _ )和 $ 开头
2、对于局部变量的定义,必须初始化,否则不能能通过编译
数据类型
数据类型分为2种:
1、基本数据类型:8种
2、引用数据类型:例如:String…
8种基本数据类型
byte
字节类型变量
基本语法:
byte 变量名 = 初识值;
public class Bytetype {
public static void main(String[] args) {
byte a = 0;
System.out.println(a);
}
}
实例:
byte的表示范围
public class Bytetype {
public static void main(String[] args) {
// byte a = 0;
// System.out.println(a);
System.out.println(Byte.MAX_VALUE);
System.out.println(Byte.MIN_VALUE);
}
}
如上图:可以看出byte的表示范围是从-128——127。
注意事项:
1、byte(字节类型)表示的是整数,占一个字节,表示范围较小(-128—127)
2、字节类型和字符类型互不相干
short
短整型变量:
语法格式:
short 变量名 = 初始值;
public class Integertype {
//short类型
public static void main(String[] args) {
short a = 123;
System.out.println(a);
}
}
实例:
short的表示范围
public class Integertype {
//short类型
public static void main(String[] args) {
System.out.println(Short.MIN_VALUE);
System.out.println(Short.MAX_VALUE);
}
}
注意事项:
1、short占用2个字节,表示的范围是:-32768—32767
2、short的表示范围也比较小,通常也不建议使用
int
整形变量
语法格式:
int 变量名 = 初始值;
public static void main(String[] args) {
int a=123;
System.out.println(a);
}
int类型表示范围
public static void main(String[] args) {
int a=123;
System.out.println(a);
System.out.println(Integer.MAX_VALUE);
System.out.println(Integer.MIN_VALUE);
}
在Java中,int类型所占4个字节,而且和操作系统无关(即:不管在哪都是4个字节)
所以Java的表示范围为:-231->231-1
如果发生溢出:
System.out.println(Integer.MAX_VALUE + 1);
System.out.println(Integer.MIN_VALUE - 1);
如图,当最大值+1 和 最小值-1的时候,结果变为了最小值和最大值。我们可以这样理解:当超过最大值,就会变为最小值,当最小值-1,就会变成最大值。
long
长整型变量
基本语法:
long 变量名 = 初始值;
public static void main(String[] args) {
long num = 10L;
System.out.println(num);
}
注意的是:在给长整型初始化的时候,初始值后面需要加上一个L(大小写都可以,为了便于区分,建议大写),如果不加L,那么初始值表示为int型
long的表示范围
System.out.println(Long.MAX_VALUE);
System.out.println(Long.MIN_VALUE);
在Java中,long类型所占8个字节,所以在Java的表示范围为:-263->263-1
如果发生溢出:
System.out.println(Long.MAX_VALUE+1);
System.out.println(Long.MIN_VALUE-1);
long的理解和int型的差不多,都可以这样理解,如下图:
float
单精度浮点型变量
基本格式:
float num = 1.0f;
//float 型
public static void main(String[] args) {
float num= 10.3f;
System.out.println(num);
}
注意:
在float中,必须加f,不然默认为double型,程序会报错,因为把大的给了小的,这样也体现了Java的安全性。而float型在Java中占4个字节。
float所表示的范围
System.out.println(Float.MAX_VALUE);
System.out.println(Float.MIN_VALUE);
double
双精度浮点数
基本格式:
double 变量名 = 初始值;
//double 型
public static void main(String[] args) {
double num = 12.5;
System.out.println(num);
}
注意:
java中的double所占8个字节,平时的时候,我们遇到小数,建议使用double。
double表示范围:
System.out.println(Double.MAX_VALUE);
System.out.println(Double.MIN_VALUE);
char
字符类型变量
基本格式:
char 变量名 = 初始值
注意事项:
在Java中,单引号+单个字母 的形式表示字符字面量
计算机的本质上是一个整数,在C语言中使用ASCII,而在Java中使用Unicode表示字符,所以Java的一个字符表示2个字节。
public class CharType {
//char 字符变量
public static void main(String[] args) {
char ch1 ='a';
char ch2 ='胡';
System.out.println(ch1);
System.out.println(ch2);
}
}
还有需要注意的是,char的包装类是:Character
boolean
布尔类型变量
语法格式:
boolean 变量名 = 初始值
public class BooleanType {
//布尔类型
public static void main(String[] args) {
boolean a= true;
System.out.println(a);
}
}
注意:
1、boolean类型中,变量只有两种取值,true 表示真 和 false 表示假。
2、Java的boolean类型和int不能相互转换,不存在C语言中,非0为真,0为假。
3、boolean类型的大小无规定,有的占1个字节,有的站一个比特位。、
4、boolean的包装类为Boolean。