如何得到ArrayList中的数据
时间: 2024-03-25 15:38:33 浏览: 17
要得到ArrayList中的数据,可以使用get()方法,该方法接受一个整数参数,代表需要获取的元素的索引位置。例如,如果我们有一个名为list的ArrayList对象,要获取第一个元素,可以使用list.get(0)。如果需要遍历整个ArrayList,可以使用for循环,如下所示:
```
ArrayList<String> list = new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
```
这将打印出ArrayList中的所有元素。
相关问题
java读取Workbook对象的数据到ArrayList集合中
可以使用 Apache POI 库来读取 excel 文件中的数据,并将数据存储到 ArrayList 集合中。
以下是示例代码:
```java
import java.io.FileInputStream;
import java.io.InputStream;
import java.util.ArrayList;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;
public class ExcelReader {
public static void main(String[] args) {
try {
// 加载 Excel 文件
InputStream inputStream = new FileInputStream("example.xlsx");
Workbook workbook = WorkbookFactory.create(inputStream);
// 获得第一个工作表
Sheet sheet = workbook.getSheetAt(0);
// 遍历所有行
ArrayList<ArrayList<String>> rows = new ArrayList<ArrayList<String>>();
for (Row row : sheet) {
ArrayList<String> cells = new ArrayList<String>();
// 遍历所有单元格
for (Cell cell : row) {
// 将单元格的值添加到 cells 集合中
cells.add(cell.getStringCellValue());
}
// 将 cells 集合添加到 rows 集合中
rows.add(cells);
}
// 打印 rows 集合中的数据
for (ArrayList<String> cells : rows) {
for (String cell : cells) {
System.out.print(cell + "\t");
}
System.out.println();
}
// 关闭输入流
inputStream.close();
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
```
上述代码将 excel 文件中的所有数据存储到了一个 ArrayList 的 ArrayList 中,每个内部 ArrayList 代表一行数据,可以根据需要进行修改。
Java中ArrayList和Vector的区别
Java中的ArrayList和Vector都是动态数组,它们的主要区别在于线程安全、性能和迭代器的实现方式。
1. 线程安全:Vector是线程安全的,而ArrayList则不是。Vector的方法都是同步的,即每个方法在执行时都会获得对象的锁,因此多个线程操作Vector时不会出现数据不一致的问题。而ArrayList则不保证线程安全,如果多个线程同时对ArrayList进行操作,可能会出现数据不一致的情况。
2. 性能:由于Vector是线程安全的,它的性能要比ArrayList低一些。因为在进行插入、删除等操作时,需要获取对象锁,而这会影响其他线程的访问速度。而ArrayList则不需要考虑线程安全问题,因此在单线程环境下性能更好。
3. 迭代器:Vector的迭代器是通过Enumeration实现的,而ArrayList则是通过Iterator实现的。Enumeration的功能比Iterator要少,而且只能进行遍历操作,而Iterator则可以进行迭代时的删除操作。
综上所述,如果应用程序需要线程安全,那么应该使用Vector;如果应用程序不需要线程安全,而且对性能有一定要求,那么应该使用ArrayList。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)