1.对象数组
首先我们来创建一个类
package LianxiDay1217.重回学Java4;
public class Person {
private String name;//相当于我只写了这两行代码
private int age;
public Person() { //无参构造
}
public Person(String name, int age) { //全参构造
this.name = name;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
然后再创建一个对象
package LianxiDay1217.重回学Java4;
public class Day1219Array {
public static void main(String[] args) {
//首先创建一个长度为3的数组,里面用来存放Person类型的对象
Person[] array = new Person[3];
Person one = new Person("卡卡罗特",18);
Person two = new Person("路飞",20);
Person three = new Person("鸣人",19);
//将one当中的地址值赋值到数组的0号元素位置
array[0] = one;
array[1] = two;
array[2] = three;
System.out.println(array[0]); //地址值
System.out.println(array[1]); //地址值
System.out.println(array[2]); //地址值
System.out.println(array[1].getName());//路飞
}
}
这样就可以执行了
2.ArrayList集合的概述及使用
数组的长度不可以发生改变。
但是ArrayList集合的长度是可以随意变化的。
对于ArrayList来说,有一个尖括号代表泛型。
泛型:也就是装在集合当中的所有元素,全都是统一的什么类型。
注意:泛型只能是引用类型,不能是基本类型。
注意事项:
对于ArrayList集合来说,直接打印得到的不是地址值,而是内容。
如果内容是空,得到的是空的中括号:[]
package LianxiDay1217.重回学Java4;
import java.util.ArrayList;
public class Day1219ArrayList {
public static void main(String[] args) {
//创建了一个ArrayList集合,集合的名称是list,里面装的全都是string字符串类型的数据
// 备注:从JDK 1.7+开始,右侧的尖括号内部可以不写内容,但是<>本身还是要写的。
ArrayList<String>list = new ArrayList<>();
System.out.println(list);
//向集合当中添加一些数据,需要用到add方法。
list.add("奥特曼");
System.out.println(list);//[奥特曼]
list.add("迪迦");
list.add("盖伦");
list.add("奈科斯");
System.out.println(list);//[奥特曼, 迪迦, 盖伦, 奈科斯]
// list.add(100);//错误写法!因为创建的时候尖括号泛型已经说了是字符串,添加进去的元素就必须都是字符串才行
}
}
3.ArrayList集合的方法及遍历
Arraylist当中的常用方法有:
public boolean add(E e):向集合当中添加元素,参数的类型和泛型一致。返回值代表添加是否成功
备注:对于ArrayList集合来说, add添加动作一定是成功的,所以返回值可用可不用。
但是对于其他集合(今后学习)来说,add添加动作不一定成功。
public E get(int index):从集合当中获取元素,参数是索引编号,返回值就是对应位置的元素。
public E remove(int index):从集合当中删除元素,参数是索引编号,返回值就是被删除掉的元素
public int size():获取集合的尺寸长度,返回值是集合中包含的元素个数。
以上这三种比较常见,记住就好了
package LianxiDay1217.重回学Java4;
import java.util.ArrayList;
public class Day1219ArrayListMethod {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<>();
System.out.println(list); //[]
//向集合中添加元素:add
boolean success = list.add("狼人"); //boolean布尔值
System.out.println(list); //[狼人]
System.out.println("添加的动作是否成功:" + success); //true
list.add("孙悟空");
list.add("路飞");
list.add("鸣人");
list.add("索隆");
System.out.println(list);//[狼人, 孙悟空, 路飞, 鸣人, 索隆]
//集合中获取元素:get,索引从0开始
String name = list.get(2);
System.out.println("第2号索引位置:" + name);//路飞
//从集合中删除元素:remove,索引值从0开始。
String whoRemoved = list.remove(4);
System.out.println("删除的人是" + whoRemoved);//索隆
System.out.println(list);//[狼人, 孙悟空, 路飞, 鸣人]
//获取集合的长度尺寸,也就是其中元素的个数
int size = list.size();
System.out.println("集合的长度是:" + size);
}
}
遍历
package LianxiDay1217.重回学Java4;
import java.util.ArrayList;
public class Day1219ArrayListEach {
public static void main(String[] args) {
ArrayList<String >list = new ArrayList<>();
list.add("奥特曼");
list.add("铠甲勇士");
list.add("假面骑士");
//遍历集合
for (int i = 0; i< list.size(); i++) {
System.out.println(list.get(i));//集合中获取元素:get,索引从0开始
}
}
}
4.ArrayList集合的存储基本数据类型
基本类型 包装类(引用类型,包装类都位于java.Lang包下)
byte ========> Byte
short ========> Short
int ========> Integer 【特殊】
Long ========> Long
float ========> FLoat
double ========> Double
char ========> Character【特殊】
booLean ========> Boolean
从JDK 1.5+开始,支持自动装箱、自动拆箱。
自动装箱:基本类型–>包装类型
自动拆箱:包装类型–>基本类型
package LianxiDay1217.重回学Java4;
import java.util.ArrayList;
public class Day1219ArrayListBasic {
public static void main(String[] args) {
ArrayList<String> listA = new ArrayList<>();
//错误写法! 泛型只能是引用类型,不能是基本类型
//Arraylist<int> listB = new Arraylist<>();
ArrayList<Integer> listC = new ArrayList<>();
listC.add(100);
listC.add(200);
System.out.println(listC);//[100, 200]
int num = listC.get(1);
System.out.println("第一号元素是:"+ num);//我想单独拿出来200
}
}
好了,话不多说,有点累了,歇会儿,要慢慢摸索了。