我想在arraylist中显示元素,而不是哈希码

时间:2011-08-10 08:24:15

标签: java arraylist

我目前正在尝试使用Java中的csv open显示名为“Haha2”的csv文件。不幸的是,当我打印arraylist时,我得到的是哈希码,而不是文件中包含的数字。

我已经尝试过.get()方法和.toArray()以及.toString方法,但我仍然只能打印出哈希码。

这是我的代码:

import au.com.bytecode.opencsv.*;
import java.io.*;
import java.util.*;

public class playlist{

   public static void main (String args()) throws IOException {

      CSVReader reader = new CSVReader(new FileReader("Haha2.asc"),';', '"',29);

      List <String[]> data = new ArrayList <String[]>();
      data = reader.readAll();

      System.out.println(data);
   }
}

5 个答案:

答案 0 :(得分:4)

这是单行,它首先将列表转换为数组,为您提供数组数组,然后调用Arrays.deepToString()

System.out.println(Arrays.deepToString(data.toArray()));

答案 1 :(得分:2)

循环浏览您的列表并在每个字符串数组上调用Arrays.toString(),或将List<String[]>转换为List<List<String>>

答案 2 :(得分:1)

使用Arrays.toString()

for( String[] array : data ) {
    System.out.println(Arrays.toString(data));
}

答案 3 :(得分:0)

迭代List而不是数组:

for( String[] array : data ) {
    for( String string : array ) {
        System.out.println(string);
    }
    System.out.println("---");
}

答案 4 :(得分:0)

for (String[] arr : data) {
    System.out.println(java.util.Arrays.asList(arr));
    System.out.println("...");
}