非主要打印方法在Java程序中不起作用

时间:2016-05-19 01:29:13

标签: java

我正在尝试打印“评级报告”的内容,但所有打印的内容都是mov1.get的内容。此外,我的计划中的任何其他问题也有助于指出。

public class PopulatePracticec {

    static int countG;
    static int countPG;
    static int countPG13;
    static int countR;

    public static void main(String[] args) throws FileNotFoundException {

        Scanner inFile = new Scanner(new FileReader("D:\\finalData.in"));
        Scanner inFile2 = new Scanner(new FileReader("D:\\finalDataCategories.in"));

        do {
            inFile.nextLine();
            String Id = inFile.next();

            String title = inFile.next();

            String releaseYear = inFile.next();

            String runTime = inFile.next();

            String rating = inFile.next();

            inFile2.nextLine();

            String id2 = inFile2.next();

            String genre = inFile2.next();

            Practicec mov1 = new Practicec();

            mov1.setId(Id);
            mov1.setTitle(title);
            mov1.setReleaseYear(releaseYear);
            mov1.setRunTime(runTime);
            mov1.setRating(rating);
            mov1.setGenre(genre);

            System.out.println(mov1.getId());
            System.out.println(mov1.getTitle());
            System.out.println(mov1.getReleaseYear());
            System.out.println(mov1.getRunTime());
            System.out.println(mov1.getRating());
            System.out.println(mov1.getGenre());

        }
        while (inFile.hasNext());
        inFile.close();
        inFile2.close();
    }

    public static void processRating(String rating) {
        switch (rating) {

            case "G":
                countG++;
                break;

            case "PG":
                countPG++;
                break;

            case "PG13":
                countPG13++;
                break;

            case "R":
                countR++;
                break;
        }
    }
    public static int lookG() {
        return countG;
    }
    public static int lookPG() {
        return countPG;
    }
    public static int lookPG13() {
        return countPG13;
    }
    public static int lookR() {
        return countR;
    }
    public static void outputLines(String rating) {
        System.out.println("Ratings Report");
        System.out.println();
        System.out.println("G = " + countG);
        System.out.println("PG = " + countPG);
        System.out.println("PG13 = " + countPG13);
        System.out.println("R = " + countR);
    }
}

1 个答案:

答案 0 :(得分:0)

他们想说的是你没有调用你创建的outputLines方法。在main方法中,您需要调用outputLines方法并传递一个字符串来保存参数的评级。一旦调用该方法,它将在您的方法中打印代码。问题是您没有调用outputLines方法,因此无法显示。

看起来应该是这样的:

outputLines(String r); // r holds a copy of the values stored in ratings

另外,你可以做的不是使用像outputLines这样的方法,你可以创建一个toString方法,在该方法中你可以传递打印评级审查内容所需的所有值,并返回一个格式化和连接的字符串。

希望这有助于你。