2016-02-14 117 views
-2

我想创建一个名为readfromfile的矢量方法,它可能会读取来自不同文本文件的输入。它为什么会给出错误? 编辑:感谢您的帮助,我编辑了代码,它的工作原理! 看起来我很混淆参数和方法! :P 感谢球员:d矢量方法Java

package cas.lab1.firsteclipsePackage; 

    import java.io.File; 
    import java.io.FileNotFoundException; 
    import java.util.Scanner; 
    import java.util.Vector; 

    public class FirstEclipseClass { 

     public static void main(String[] args) { 
      Vector input = new Vector();  
      input.add("A"); 
      input.add("B"); 
      input.add("C"); 
      input.add("D"); 
      printVectorElements(input, 3); 
      Vector<String> results = readFromFile(); 
     } 


     public static void printVectorElements(Vector input, int count) { 
      for (int i = 0; i < count; i++) { 
       System.out.println(input.get(i)); 

      } 
     } 
     public static Vector<String> readFromFile(){ //yeah I did confuse methods and parameters 
      Vector<String> result = new Vector<String>(); 
      try{ 
      File f = new File("input.txt"); 
      Scanner s = new Scanner(f); 
      while(s.hasNextLine()) { 
      int i = s.nextInt(); 
      if(i % 2 == 0) 
      result.add("Even"); 
      else 
      result.add("Odd"); 
      System.out.println(i); 
      } 
      s.close(); 
      } 
      catch(FileNotFoundException e){ 
      e.printStackTrace(); 
      } 
      return result; 
     } 
    } 
+2

欢迎堆栈溢出。当你收到一个错误并提出一个问题时,*总是*在问题中包含错误。 (我还建议您使用'List '而不是'Vector ',并使用'ArrayList '作为您的“默认”实现。) –

+1

您将方法参数与方法返回类型混淆。 – Tunaki

+0

'public static Vector readFromFile(){'缺少返回类型。 – Satya

回答

1

我猜你在这里混淆有此相同的名称。从你的方法调用中,我发现你不需要传递任何参数,而是需要一个Vector。因此,我建议你改变这一行:

public static readFromFile(Vector<String> results){ 

这一行:

public static Vector<String> readFromFile(){ 
1

第一件事:你没有指定的返回类型。你应该有:

public static Vector<String> readFromFile() 

如果你不需要函数中的任何参数。

其次,对于未来,你不能在功能和作为函数参数

+0

完整地阅读该问题是否它的静态或实例方法,包含params或不。 – Satya