이 주문 목록 것으로 보인다. 파일을 구문 분석하는 동안 그래서, 대신에 다른 변수에 저장의 가 Order
객체로을 캡슐화 이제
public class Order {
private String itemName;
private int quantity;
private double price;
public Order(String itemName, int quantity, double price) {
this.itemName = itemName;
this.quantity = quantity;
this.price = price;
}
// constructor overloading to help instantiate from Strings
public Order(String itemName, String quantity, String price) {
this (itemName, Integer.parseInt(quantity), Double.parseDouble(price));
}
// getters/setters
@Override
public String toString() { // to print Order values to console easily
return "{item = " + itemName +
", quantity = " + quantity +
", price = " + price + "}";
}
}
같은 클래스를함으로써 (여기 OOP를 생각한다), 단순히 Order
객체의 인스턴스를 채 웁니다 (생각 하나의 단일 줄 = 하나의 Order
개체)을 입력 한 다음 Collection
(주문 중)에 추가하십시오. List
이 좋은 선택입니다.
List<Order> listOfOrders = new ArrayList<Order>();
while(fileScanner.hasNextLine())
{
String line = fileScanner.nextLine();
String [] array = line.split(",");
for (int i = 0; i < array.length; i++)
{
// instantiate; initialize with passed params; add to list
listOfOrders.add(new Order(array[0], array[1], array[2]));
}
}
System.out.println(listOfOrders); // would use Order.toString()
다소 모호한 질문입니다. 어떤 유형의 변수입니까? 헤더 행을 올바르게 처리 할 수 있는지 또는 항상 동일하다고 가정 할 수 있습니까? 왜 모든 데이터가 포함 된 단일 변수가 아닌가? – boxed