这个方法该放在哪里?

问题描述 投票:0回答:1

我是java新手,只是想读取一个csv文件,我做到了。但我想玩弄方法,但我不能。

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class CSVToObjectConverter {



    public static void main(String[] args) {
        String csvFile = args[0];
        String line;
        List<pizza> pizl = new ArrayList<>();

        try (BufferedReader br = new BufferedReader(new FileReader(csvFile))) {
            while ((line = br.readLine()) != null) {
                String[] data = line.split(",(?=([^\"]*\"[^\"]*\")*[^\"]*$)");
                float pizza_id = Float.parseFloat(data[0]);
                float order_id = Float.parseFloat(data[1]);
                String pizza_name_id = data[2];
                float quantity = Float.parseFloat(data[3]);
                String order_date = data[4];
                String order_time = data[5];
                float unit_price = Float.parseFloat(data[6]);
                float total_price = Float.parseFloat(data[7]);
                String pizza_size = data[8];
                String pizza_category = data[9];
                String pizza_ingredients = data[10];
                String pizza_name = data[11];

                pizza pizaA = new pizza(pizza_id,
                order_id,
                pizza_name_id,
                quantity,
                order_date,
                order_time,
                unit_price,
                total_price,
                pizza_size,
                pizza_category,
                pizza_ingredients,
                pizza_name);
                pizl.add(pizaA);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }

       // for (pizza pizaA : pizl) {
           // System.out.println(pizl.get(0).order_id());
       // }
        /*
        public void myMethod() {
            for ( int a = 0 ; a < pizl.size() ; a++)
            {
                System.out.println(pizl.get(a).order_id());
            }
       }
       */

       myMethod(pizl);

    }

}

class pizza{
    private float pizza_id;
    private float order_id;
    private String pizza_name_id;
    private float quantity;
    private String order_date;
    private String order_time;
    private float unit_price;
    private float total_price;
    private String pizza_size;
    private String pizza_category;
    private String pizza_ingredients;
    private String pizza_name;

    public pizza(float pizza_id,
    float order_id,
    String pizza_name_id,
    float quantity,
    String order_date,
    String order_time,
    float unit_price,
    float total_price,
    String pizza_size,
    String pizza_category,
    String pizza_ingredients,
    String pizza_name) {
        this.pizza_id = pizza_id;
        this.order_id = order_id;
        this.pizza_name_id = pizza_name_id;
        this.quantity = quantity;
        this.order_date = order_date;
        this.order_time = order_time;
        this.unit_price = unit_price;
        this.total_price = total_price;
        this.pizza_size = pizza_size;
        this.pizza_category = pizza_category;
        this.pizza_ingredients = pizza_ingredients;
        this.pizza_name = pizza_name;
    }

    // Getters and setters (omitted for brevity)

    //@Override
    public float pizza_id() {
        return pizza_id;
    }
    public float order_id() {
        return order_id;
    }
    public String pizza_name_id() {
        return pizza_name_id;
    }
    public float quantity() {
        return quantity;
    }
    public String order_date() {
        return order_date;
    }
    public String order_time() {
        return order_time;
    }
    public float unit_price() {
        return unit_price;
    }
    public float total_price() {
        return total_price;
    }
    public String pizza_size() {
        return pizza_size;
    }
    public String pizza_category() {
        return pizza_category;
    }
    public String pizza_ingredients() {
        return pizza_ingredients;
    }
    public String pizza_name() {
        return pizza_name;
    }

    public void myMethod(List<pizza> c) {
        for ( int a = 0 ; a < c.size() ; a++)
        {
            System.out.println(c.get(a).order_id());
        }
    }
}


我只想使用“myMethod”,但我不知道如何使用。

我尝试移动这个方法,但实际上我不知道把它放在哪里,输出是一个错误,你找不到符号。

我需要掌握方法和 Java,但我没有太多时间来完成任务。

java list methods
1个回答
0
投票

您需要将此方法设为静态:

public static void myMethod(List<pizza> c) {
    for ( int a = 0 ; a < c.size() ; a++)
    {
        System.out.println(c.get(a).order_id());
    }
}

然后在main中,需要调用(还要注意JAVA中的类名必须是Pizza而不是pizza)

Pizza.myMethod(pizl);
© www.soinside.com 2019 - 2024. All rights reserved.