簡體   English   中英

java中使用標准輸入法的打印圖:避免未使用局部變量的警告

[英]Printing maps of using standard input method in java: Avoiding the warning on unused local variables

我正在編寫一個程序 WorldMap.java 從標准輸入讀取一個國家(或其他地理實體)的邊界信息並將結果繪制到標准繪圖。 一個國家由一組地區(例如,州、省或其他行政區划)組成,每個地區都由一個多邊形來描述。

對於輸入格式 - 第一行包含兩個整數:寬度和高度。 輸入的其余部分被划分為區域-

每個區域中的第一個條目是該區域的名稱。 為簡單起見,名稱將不包含空格。 下一個條目是 integer,指定描述該區域的多邊形中的頂點數。 最后,該區域包含多邊形頂點的 x 和 y 坐標。 用於標准輸入的文本文件的快照

我的代碼運行良好,但在提交作業時收到 pmd 警告-

WorldMap.java:16: Avoid unused local variables, such as 'name'. [UnusedLocalVariable]

如何修改我的代碼以避免 pmd 警告? 這是代碼-

 int width = StdIn.readInt();
    int height = StdIn.readInt();
    StdDraw.enableDoubleBuffering();
    StdDraw.setCanvasSize(width, height);
    StdDraw.setXscale(0.0, width);
    StdDraw.setYscale(0.0, height);
    while (!StdIn.isEmpty()) {
        String name = StdIn.readString();
        int vertices = StdIn.readInt();
        double[] x = new double[vertices];
        double[] y = new double[vertices];
        for (int i = 0; i < vertices; i++) {
            x[i] = StdIn.readDouble();
            y[i] = StdIn.readDouble();
        }
        StdDraw.polygon(x, y);
    }
    StdDraw.show();

PMD 是一款開源 static 源代碼分析器,用於報告在應用程序代碼中發現的問題。 隨意谷歌了解更多詳情。

您在下面的行中讀取名稱變量中的字符串值,但您沒有在代碼中的任何地方使用此字符串值。 String name = StdIn.readString(); . 如果您沒有使用 name 變量來表示您不需要讀取其中的值,或者換句話說,您不需要聲明它。 這就是 PMD 給你警告的原因——要么你錯過了使用變量,要么你可以刪除變量,程序的 output 不會有任何區別。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM