-3

我是雷蒙德,计算机编程专业的学生。我有关于数组的问题。教练是否要求我们做一个像这样的程序。

在下面的代码中。我想显示我输入的相同项目代码。但问题是,一旦我回答“是”并再次输入数字,唯一显示的是我输入的最后一个数字或代码。

import java.util.Scanner;

public class _TindahanArray {

    public static void main(String[] args) {
        Scanner a = new Scanner(System.in);
        String ans, i = "";
        int x;

        do {

            System.out.print("Item code:");
            i += a.next();

            System.out.print("\nAnother item? [y/n]:");
            ans = a.next();

        } while (ans.equals("y"));

        String[] code = new String[2];

        for (x = 0; x < 1; x++) {

            code[x] = i;

            System.out.print(code[x]);

            code[x] = "\n";
            System.out.print(code[x]);
        }

    }
}
4

1 回答 1

1

正如您所做的一些努力,我只想更新您的代码。
您的代码仅适用于打印两个项目代码。

使用集合ArrayList来存储项目代码。我正在使用字符串数组列表。

import java.util.ArrayList;
import java.util.Scanner;

public class ArrayTest {

    public static void main(String[] args) {

    Scanner a = new Scanner(System.in);
    String ans;
    ArrayList<String> itemCodeList = new ArrayList<String>();  //create array list      

    do{

       System.out.print("Item code:");
       itemCodeList.add(a.next());  //add item code into array list

       System.out.print("\nAnother item? [y/n]:");
       ans = a.next();

    }while(ans.equals("y"));

    for (String code : itemCodeList) 
    {
        System.out.println(code);           
    }
   }
 }
于 2013-10-10T06:17:41.417 回答