Java List 怎么用
平时我们整理购物清单、记录待办事项时,会习惯把内容按顺序列出来,还能随时加项、改项——这种“有序、可调整的集合”逻辑,放到编程里就对应着Java的List。它是Java里最常用的工具之一,能帮我们有序存数据,还能灵活修改,今天就用生活例子把它的用法讲明白。
第一步:先把“清单”造出来
用List之前,得先告诉Java“我要建个什么样的清单”。最常用的是ArrayList,就像那种带页码的活页本,每页按顺序放内容,找东西快,加改也方便。

举个例子,我们要建一个“周末要逛的书店清单”:
`java
// 先导入List和ArrayList工具,就像打开活页本的包装
import java.util.ArrayList;
import java.util.List;
public class Test {
public static void main(String[] args) {
// 造清单:List<String> 表示清单里只能放文字内容,String就是文字类型
List<String> bookStores = new ArrayList<>();
}
}
`
这里的String是限定清单内容的,就像约定“书店清单只能写店名,不能放数字”,避免写错内容。
第二步:给清单加内容
造好空清单,接下来就是加店名,就像把书店名字写到活页纸上。用add()方法就行:
`java
// 加第一家书店
bookStores.add("西西弗书店");
// 按顺序加第二家
bookStores.add("方所书店");
// 插在第一个位置,把原来的第一家挤到后面,比如加最想去的“单向空间”在最前面
bookStores.add(0, "单向空间");
`
加的时候要注意,add(内容)是按顺序放末尾,add(位置, 内容)是插到指定位置,就像在活页本第1页加内容,不会打乱后面的顺序。
第三步:改清单里的内容
逛完街改计划很常见,比如把“方所书店”改成“方所(天河店)”,用set()方法就行,直接替换指定位置的内容:
`java
// 第2个位置是“方所书店”,改成更详细的店名
bookStores.set(2, "方所(天河店)");
`
这里的位置是从0开始数的,第一个内容对应0,第二个对应1,第三个对应2,就像活页本的第1页算0,第2页算1,别数错位置。
第四步:查清单里的内容
想知道某家书店在第几位,或者清单有多少家店,用get()和size()就能查:
`java
// 查第1页(位置0)的店名,就是“单向空间”
String firstStore = bookStores.get(0);
// 查清单总共有多少家店,就像数活页本有多少页
int count = bookStores.size();
System.out.println("第一家要逛的是:" + firstStore);
System.out.println("总共有" + count + "家书店要去");
`
如果想找有没有某家店,用contains()就像翻清单找名字:
`java
// 检查有没有“西西弗书店”
boolean hasXixi = bookStores.contains("西西弗书店");
System.out.println("清单里有西西弗吗?" + hasXixi); // 输出true
`
第五步:删清单里的内容
逛完的书店可以从清单里划掉,用remove()方法,就像撕活页纸:
`java
// 删掉位置2的“方所(天河店)”
bookStores.remove(2);
// 也可以直接删店名,删掉“西西弗书店”
bookStores.remove("西西弗书店");
`
删的时候要注意,如果内容是数字,要区分“删位置”和“删内容”——不过我们用文字的话直接写内容就行,不会搞错。
最后:完整的小例子
把这些操作连起来,就是一个完整的书店清单管理,是不是和生活里整理清单一模一样?
`java
import java.util.ArrayList;
import java.util.List;
public class BookListTest {
public static void main(String[] args) {
List<String> bookStores = new ArrayList<>();
// 加内容
bookStores.add("西西弗书店");
bookStores.add("方所书店");
bookStores.add(0, "单向空间");
// 改内容
bookStores.set(2, "方所(天河店)");
// 查内容
System.out.println("第一家:" + bookStores.get(0));
System.out.println("总数量:" + bookStores.size());
// 删内容
bookStores.remove(2);
bookStores.remove("西西弗书店");
// 输出最终清单
System.out.println("最终要逛的书店:" + bookStores);
}
}
`
运行后会输出:
第一家:单向空间
总数量:3
最终要逛的书店:[单向空间]
Java的List其实就是把生活里的有序清单搬到代码里,掌握这几个核心方法,就能应付日常大部分的有序数据处理需求了。