开发工具与关键技术:MyEclipse 10、Java
作者:曾浩源
撰写时间:2019年04月08日
在学习C#时,经常使用的list集合,在java中也有而且还比C#更简单更方便。
首先,实现一个简单的list集合,在main方法内直接实例化ArrayList集合:
public static void main(String[] args) {
List<String> list=new ArrayList<String>();
}
然后就可以通过add方法为此集合新增内容了
新增内容如上图:
有新增当然也有删除。只需使用remove()方法
Remove()在List集合中有两种使用方法
第一:list.remove(0);
根据索引删除。
第二:list.remove(“我是第四”);
根据指定内容删除
接下来是修改:list.set(3, “我是第6”);
根据索引修改为指定内容
最后是获取集合内容,使用get()方法 获取指定索引内容:list.get(1);
当然还有其他的:多个新增addAll(),删除多个removeAll(),清空集合clear(),等等;
既然有了集合,那肯定是要遍历的,遍历有三种方法:
1、for循环 2、foreach循环 3、使用iterator迭代器while循环
一、首先第一个for循环:
list.size()是获取该集合的长度
根据索引(i)遍历集合
二、foreach循环
三、使用iterator迭代器while循环
输出结果都是如下:
发现顺序不对,接下来进行排序:
这是正序:从小到大;
反过来:倒序,从大到小;
return o2.compareTo(o1);
只需要将o1和o2互换位置
接下来实现一个拥有姓名、年龄、班级、分数的集合
首先 创建一个类 ClassList 在这类里声明这四个 私有 变量
然后为四个私有变量创建Getters,Setters
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public int getSorce() {
return sorce;
}
public void setSorce(int sorce) {
this.sorce = sorce;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getNclass() {
return nclass;
}
public void setNclass(String nclass) {
this.nclass = nclass;
}
接下来在该类里写一个带有四个参数的构造器
ListTest里,创建main,在main方法里实例化list集合 并添加元素
输出一下list集合:
发现结果是一串这种东西,所有我们需要重写一下toString()方法
在ClassList类里重写toString()方法,将字符串格式化。
第一个直接返回字符串:
第二个通过format()方法 将字符串格式化
两个输出格式都如下:
String.format()方法
%s 字符串类型 “sdaf”
%c 字符类型 “c”
%b 布尔类型 true
%d 整数类型(十进制) 99
%x 整数类型(十六进制) FF
%o 整数类型(八进制) 77
%f 浮点类型 99.99
%a 十六进制浮点型 FF.35AE
%e 指数类型(科学计数法) 9.38e+5
%g 通用浮点类型(f和e类型中较短的)
%h 散列码
%% 百分比类型 %
%n 换行符
%tx 日期与时间类型(x代表不同的日期与时间转换符)
之后可以对集合进行排序(成绩从高到低,班级从低到高,年龄从低到高,姓名从A到Z)
输出结果: