一、数据类型
Java数据类型分为两大类:“基本类型”和“引用类型”
1、基本数据类型
八大基本数据类型:
整数:int、short、byte、long
浮点数:float、double
字符类型:char
布尔类型:boolean
数据类型 | 描述 | 占用字节 | 取值范围 | 默认值 | 封装类型 |
int | 用于存储整数 | 4 | -2^31 - 2^31-1 | 0 | Intger |
byte | Java中最小数据类型 | 1 | -2^8 - 2^8-1 | 0 | Byte |
short | 短整数 | 2 | -2^15 - 2^15-1 | 0 | Short |
long | 长整数 | 8 | -2^63 - 2^63-1 | 0L | Long |
float | 浮点型,用来存储带小数点的数字 | 1 | / | 0.0f | Float |
double | 双精度浮点型,用来存储带小数点的数字 | 8 | / | 0.0d | Double |
char | 字符型,用来存储单个字符 | 2 | 0-65536 | null | Character |
boolean | 布尔类型,用于逻辑运算,判断真假 | 1 | 仅两个值,true、false | false | Boolean |
2、引用数据类型
引用数据类型分三种:类、接口、数组
1)、类Class引用:
- Object:Object是一个很重要的类,是类层次结构的根类,每个类都使用Object作为超类, 所有对象包括数组都实现这个类的方法。Object可以定义所有的类
- String:String类是字符串,Java程序中所有的字符串都可以通过此类进行实现。检查序列的单个字符、比较字符串、搜索字符串、提取子字符串、创建字符串副本、在该副本中、所有的字符都被转换为大写或小写形式。
- Date:Date表示时间类型,可以精确到毫秒。
- Void 类是一个不可实例化的占位符类,它保持一个对代表 Java 关键字 void 的 Class 对象的引用。
同时也有对应的Class如:Integer、 Long 、Boolean 、Byte、 Character、 Double 、Float Short基本数据类型的封装类。
2)、接口interface引用
- List<E>:在列表中主要进行数据的遍历,在List下有ArrarList和LinkList两种类型。
- add():在列表中插入指定元素
- remove():在列表中移除指定元素
- get(int index):获取列表中指定的元素
- map<k,v>:k:映射键的类型 v:映射到值的对象。 值(v)可以重复,键(k)只能一个,不可重复
3)、数组引用
数组:存储在一个连续的内存快中相同类型的元素集合
数组长度一旦声明,不可改变不可追加
语法格式:类型[] 数组名 = new 数组类型[]{元素1,元素2,元素3,...元素n};
简化语法:类型[] 数组名 = {元素1,元素2,元素3...元素n};
//声明一个int类型的数组并分配十个空间
int[] a=new int[10];
//数组是从0开始计算,分配十个数,因为只分配了十个空间
a[0]=1;
a[1]=2;
......
3、类型转换
低------------------------------------------------>高
short,btye,char->int->long->float->double
数据转换分为两种:
强制类型转换:从低类型到高类型需要强制
自动类型转换:从高类型到低类型自动转换
注意点:
1、不能对布尔类型进行转换
2、把高容量转换为低容量,需进行强制转换
3、转换的时候可能存在溢出问题或精度问题
public class Hello2 {
public static void main(String[] args){
//强制转换 从低到高需要对类型进行强制转换
double a=10;
int b=(int)a;//(类型)变量名
//自动转换 高类型到低类型自动转换
int c=20;
double d=c;
System.out.println(b);
System.out.println(d);
}
}