java - 关于控制台中单独显示的行

标签 java

我通过在测试文件夹中保留 3 个不同的文件来实现如下所示的想法

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

        Map<String, Integer> result = new HashMap<String, Integer>();

        File directory = new File("C:/Test/");
        File[] files = directory.listFiles();
        for (File file : files) {
            if (file.isFile()) {
                Scanner scanner = new Scanner(new FileReader(file));
                int lineCount = 0;
                try {
                    for (lineCount = 0; scanner.nextLine() != null; lineCount++);
                } catch (NoSuchElementException e) {
                    result.put(file.getName(), lineCount);
                }
            }}

        System.out.println(result);     
            }}

但是作为输出的结果,我得到的计算其中代码行数的文件全部都在一行中,如下所示。

{ValidateWagRewardsRedemptionOptionPPI.java=73, IWalgreensRewardsPosLogSupport.java=134, WagEnrollmentInfoLine.java=111}

请告知我希望结果采用如下所示的输出格式

WalgreensRewardsPosLogSupport.java=134,
WagEnrollmentInfoLine.java=111,
ValidateRewardsAARPManualEntryPPI.java=67

这是新行本身中的每个文件,请告知需要为此进行哪些必要的更改。

最佳答案

System.out.println(result); 替换为

for(String e : result.keySet())
    System.out.println(e+"="+result(e)+"\n")

您得到的是 HashMap 的默认 toString。

关于java - 关于控制台中单独显示的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11231893/

相关文章:

java - 抽象类变量和继承

java - ImageView 不显示

java - Java 编程语言中的 boolean 范围

java - 当互联网连接丢失时,优雅地处理 NPE 并在 OnPostExecute/AsyncTask 中显示 AlertDialog - Android/Java

java - 尝试连接 google qpx api 时出现 Http 错误 500

java - 根据 RFC5322 和 https ://en. 进行电子邮件 ID 验证 wikipedia.org/wiki/Email_address

Java,解析 xml 属性的原始、未转换值。贾克森或贾克斯布

java - Wicket:动态添加 TextField/Panel

java - Servlet 问题 - 索引页面未弹出

java - 如何从列表中获取元素并删除它?