Java 程序将*.csv文件读入数组并打印内容。要求打印索引编号
我正在尝试将索引号包含到我的println字符串中。我尝试创建一个迭代循环,但它没有正确打印索引号Java 程序将*.csv文件读入数组并打印内容。要求打印索引编号,java,csv,arraylist,indexing,printing,Java,Csv,Arraylist,Indexing,Printing,我正在尝试将索引号包含到我的println字符串中。我尝试创建一个迭代循环,但它没有正确打印索引号 package main; import test.address; import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; import java.util.ArrayList; public class Lab9_main { // Delimiters used i
package main;
import test.address;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
public class Lab9_main {
// Delimiters used in the CSV file
private static final String COMMA_DELIMITER = ",";
public static void main(String[] args) {
BufferedReader br = null;
try {
// Reading the csv file
br = new BufferedReader(new FileReader("addresses.csv"));
// Create List for holding address objects
ArrayList<address> addressList = new ArrayList<>();
String line;
// Read to skip the header
br.readLine();
// Reading from the second line
while ((line = br.readLine()) != null) {
String[] addressDetails = line.split(COMMA_DELIMITER);
//Save the address details in address object
if(addressDetails.length > 0 ) {
address addy = new address(addressDetails[0], addressDetails[1], addressDetails[2],
addressDetails[3], addressDetails[4], Integer.parseInt(addressDetails[5]));
addressList.add(addy);
}
}
// Lets print the address List
for(address e : addressList) {
System.out.println("The address details in the index....." + e + "....:" + e.getFirstName()
+ "..." + e.getLastName() + "..." + e.getAdd() + "...." + e.getCit() + ".. " + e.getSt()
+ "..." + e.getZip());
}
} catch(Exception ee) {
ee.printStackTrace();
}
finally {
try {
br.close();
} catch(IOException ie) {
System.out.println("Error occurred while closing the BufferedReader");
ie.printStackTrace();
}
}
}
}
我希望显示索引号,而不是地址位置,例如:
The address details in the index.....0....:John...Doe...120 jefferson st.....Riverside.. NJ...80751
The address details in the index.....1....:Jack...McGinnis...220 hobo Av.....Phila.. PA...9119
您正在使用的将在集合上迭代,而不公开您手中的元素的索引
请尝试以下方法:
//Lets print the Employee List
for(int i = 0; i < addressList.size(); i++) {
address e = addressList.get(i);
System.out.println("The address details in the index....." + i + "....:" + e.getFirstName()
+ "..." + e.getLastName() + "..." + e.getAdd() + "...." + e.getCit() + ".. " + e.getSt()
+ "..." + e.getZip());
}
//打印员工列表
对于(int i=0;i
如果您希望坚持自己的for循环-
// Lets print the address List
// initialize your index number
int i=0;
for(address e : addressList) {
System.out.println("The address details in the index....." + i + " " + e + "....:" + e.getFirstName()
+ "..." + e.getLastName() + "..." + e.getAdd() + "...." + e.getCit() + ".. " + e.getSt()
+ "..." + e.getZip());
// increment your index and let it roll
i++;
}
此代码不起作用。它打印“0”作为列表中所有地址的索引号。您可以在for循环之外增加“i”。应该有用。
// Lets print the address List
// initialize your index number
int i=0;
for(address e : addressList) {
System.out.println("The address details in the index....." + i + " " + e + "....:" + e.getFirstName()
+ "..." + e.getLastName() + "..." + e.getAdd() + "...." + e.getCit() + ".. " + e.getSt()
+ "..." + e.getZip());
// increment your index and let it roll
i++;
}