java - 使用 ListIterator 打印数组列表

标签 java iterator

我正在尝试使用 ListIterator 从 ArrayList 进行打印,我很确定我做错了,因为它不起作用,但我不知道如何修复它。所有这些获取零件号的线都不起作用,不知道为什么;P。任何帮助总是值得赞赏:)。

package invoice;
import static java.lang.System.out;

import java.util.*;

public class InvoiceTest {


    public static void print(){

    }

    public static void main (String args[]) {

        Scanner imput = new Scanner (System.in);
        ArrayList lInvoice = new ArrayList() ;
        int counter = 0;
        int partCounter;

        out.println("Welcome to invoice storer 1.0!");
        out.println("To start please enter the number of items: ");
        partCounter = imput.nextInt();


        while (counter < partCounter){
            counter++;
            out.println("Please enter the part number:");   
            Invoice invoice1 = new Invoice(); //Makes invoice 1 use the invoice class
            String partNumber = imput.nextLine();// sets part number to the next imput
            //invoice1.setPartNumber(partNumber);// Sets it to the private variable in invoice.java
            lInvoice.add(partNumber);

            out.println("Please enter in a discription of the part: ");
            String partDis = imput.nextLine();
            //invoice1.setPartDis(partDis);
            lInvoice.add(partDis);

            out.println ("Please enter the number of items purchased: ");
            int quanity = imput.nextInt();
            //invoice1.setQuanity(quanity);
            lInvoice.add(quanity);

            out.println ("Please enter the price of the item:");
            double price = imput.nextDouble();
            //invoice1.setPrice(price);
            lInvoice.add(price);

        }

        ListIterator<String> ltr = lInvoice.listIterator();
        while(ltr.hasNext());
        out.println(ltr.next());
    }
}

最佳答案

您的程序中还存在一些其他错误。

首先,您应该向 ArrayList 添加一个类型。由于您尝试添加 int , doubleString ,我建议您创建一个 ArrayList<Object> lInvoice = new ArrayList<Object>() ;

然后只需使用迭代器循环即可:

ListIterator<Object> ltr = lInvoice.listIterator();
       while(ltr.hasNext()){
           out.println(ltr.next()); 
       }

关于java - 使用 ListIterator 打印数组列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16701681/

相关文章:

java - Spring : Is this member variable thread-safe?

java - 如何访问 context.xml 参数?

c++ - std::map 迭代器和插入的行为

c++ - 忽略外部 vector 位置的嵌套 vector 迭代

C++:在仿 STL 类中使用任何迭代器类型?

java - 独立java应用程序的缓存/映射策略

java - 使用 Ant 更改 getter setter

java - 如何确保JMS队列将消息保存在持久存储中而不是堆中?

java - 如何理解Java中的 `Iterable`和 `Iterator`?

java - 创建 remove() 方法以从数组列表中删除项目 (Java)