-3

我想在我的代码读取的 txt 的每一行中添加数字,但出现了这个错误:

LineNumbers.java:32:lineNum 已在 main(java.lang.String[]) 中定义

for(int lineNum = 0; lineNum <= line; lineNum++)

LineNumbers.java:32:运算符 <= 不能应用于 int,java.lang.String

for(int lineNum = 0; lineNum <= line; lineNum++)

我的代码是:

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

public class LineNumbers
{
   public static void main(String[] args) throws IOException
   {
      Scanner keyboard = new Scanner(System.in);

      String fileName;
      String line;
      int lineNum = 0;

      System.out.print("Enter file name: ");
      fileName = keyboard.nextLine();

      File file = new File(fileName);
      Scanner inputFile = new Scanner(file);

      while (inputFile.hasNextLine())
      {
            line = inputFile.nextLine();
         for(int lineNum = 0; lineNum <= line; lineNum++)
         {
            System.out.println(line);
         }
      }

      inputFile.close();
   }
} 

任何帮助将不胜感激。谢谢你的时间!

4

2 回答 2

2

我认为这将是有道理的。

  while (inputFile.hasNextLine())
  {
        line = inputFile.nextLine();
        lineNum++;
        System.out.println("Line Number:"+lineNum+" = "+line);

  }
  System.out.println(lineNum);
于 2013-09-20T04:47:49.463 回答
1

将您的循环更改为:

while ((line = inputFile.nextLine())!=null)
  {
       System.out.println(line+":"+lineNum++);

  }

您收到错误是因为您已经在开始时定义了 lineNum 并且您在 for 循环中再次声明它。第二件事,你无法intString价值进行比较。它会导致您面临的第二个错误。

于 2013-09-20T04:44:41.463 回答