java - java中访问列表元素

标签 java list linked-list

我创建了一个链表对象,如下

 importBuffer = new BufferedReader(new FileReader(importcsvFile));
              while ((line = importBuffer.readLine()) != null) {

                  // use comma as separator
                  String[] importedFile = line.split(cvsSplitBy); //cap,comune,provincia,stato

                  System.out.println("Codice Azienda " + importedFile[0] + " , Codice Cliente=" + importedFile[1] + " , Regione Sociale=" + importedFile[2] + " , Indrizzo=" + importedFile[3] + " , comune=" + importedFile[4] + " , provincia=" + importedFile[5] + " , stato=" + importedFile[6] +"]");
                  counter++;
                  PublicDefinition.importList.add(importBuffer.toString());

                  List customers = select.select(importedFile[0],importedFile[1], importedFile[3]);

                  if(!customers.isEmpty())
                  {

                 System.out.println("selected Customer  : " + customers.size());   
                 buffureList = customers;
                 Object a=List.class.cast(customers);

                 PublicDefinition.testingList.add(buffureList.toString());

                 System.out.println("selected Customer  : " + PublicDefinition.importList.get(0));
                 System.out.println("selected Customer  : " + PublicDefinition.testingList.getFirst());

                 updateCustomer =  customers;
                 if(customers.get(0)==importedFile[0])
                     System.out.println("Matched Codice Azienda");
                 select.updateTable(importedFile[1], importedFile[3], "10.34", "11.40"); //String CodiceCliente, String indrizzo, String latitude, String longitute         
                  }
              }

当我尝试使用

访问链接列表的元素时
System.out.println("selected Customer  : " + PublicDefinition.importList.get(0));

我得到了输出:

selected Customer  : java.io.BufferedReader@420dc55b

我认为这是内存引用,但我想检索链表的值

我的选择功能是:

public List<Customer> select(String codiceAzienda, String codiceCliente, String indrizzo) {
        return jdbcTemplate.query(
                "SELECT * FROM customers WHERE CodiceAzienda= ?",
                new Object[] { codiceAzienda},
                (rs, rowNum) -> new Customer(rs.getLong("id"),
                         rs.getString("CodiceAzienda"), rs.getString("Indrizzo"), rs.getString("codice_cliente"), rs.getString("Indrizzo")));
    }

最佳答案

您添加了 importBuffer 对象toString() 值,而不是实际内容。默认的toString()实现(每个对象都继承自...Object)返回ClassName@HashCode。所以你的输出没有错误,但你的输入是错误的。

参见Object.toString() in the javadoc

关于java - java中访问列表元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42278704/

相关文章:

java - Spring Security AOP错误

java - 将子类分配给每个数组元素(运行时类型)

linked-list - 链表单类 vs 多类

python - 为什么在带有 “next” 和 “previous” 按钮的音乐播放器中使用双向链表,而使用列表更简单?

java - recycleview 设置适配器中支持 v4 view.NestedScrollingChild2 时出错

java - 停止与 udp 服务器的线程

Python - 从文件中读取先前的 'list' 变量

python - 在不使用循环的情况下选择列表的前 n 项。

R数据帧到 "dictionary"避免因素列表

c++ - 我可以在 std::list 中移动元素而不会使迭代器或引用失效,但是如何呢?