Печать кода без комментариев - PullRequest
0 голосов
/ 27 апреля 2018

Мне было дано задание напечатать код без комментариев (все 3 вида комментариев: /**/, //, /**/), и это то, что я имею до сих пор. Может кто-нибудь помочь мне с тем, что делать сейчас? Спасибо за вашу помощь.

import java.io.IOException;
import java.util.Scanner;
import java.io.*;

public class StripComments {

    /* this is the main method
    of my file
     */

    public static void main(String[] args) throws IOException {
        new StripComments();
    }

    public StripComments() throws IOException {

        String line = "";

        Scanner sc = new Scanner(new FileInputStream("./src/StripComments.java"));
        while (sc.hasNextLine()) {   // This tells me if there are more lines
            if(line.contains("//")) {
                continue;
            }
            System.out.println(line);
            line = sc.nextLine();
        }

        //Here is your code
        sc.close();
    }
}

1 Ответ

0 голосов
/ 27 апреля 2018

Похоже, вы застряли на этой проблеме!

line = sc.nextLine();

В этой строке вашей программы вы читаете следующую строку входного файла (т.е. код). Первое, что вам нужно сделать, это проверить, содержит ли эта строка какой-либо из операторов, которые вы ищете (а именно // или / *).

Тогда, если это // вы захотите игнорировать все после этого. Если это / *, вы хотите игнорировать все, вплоть до * /.

Дайте ему шанс, и мы поможем вам пройти через это

...