Experiment.java:18: 错误:表达式的非法开始

问题描述 投票:0回答:1
import static java.lang.System.*;
import java.io.IOException;
import java.io.File;
import java.util.Scanner;


public class Experiment 
{
 private int periodCount = 0;
 private String para = "";
  
 public static void main( String args[] ) throws IOException
    {  
   
      
   Scanner file = new Scanner(new File("example.dat"));
   
   public int getNumberString()
     {
      String vowels = " ";
      int count = 0;
      String para = file("example.dat");
      for(int index = 0; index < para.length(); index++)
      {
         if(vowels.indexOf(para.charAt(index)) >= 0)
         {
            count++;
         }
         
         return count;  
       }
     
    } 
        //file.nextLine();
            
    public int periodCounter() 
     {
      int size = getNumberString();
      
      for(int i = 0; i < size; i++)
        {
           if(para.charAt(i + 1) == '.')
            periodCount++;   
           
        }
        return periodCount;
     } 
     
  public String Decider()
  {
     
    if(periodCount() <= 30)
        return "Average";
    if (periodCount() >= 30)
        return "high";    
        
  }
   
   
    System.out.println("This paragragh is a reading level" + Decider());
   
   
   }      
         
     

嗨!需要明确的是,我只是在搞乱这个,但现在我想看看它是否会起作用。目标是计算 dat 文件文档段落中的空格数,并将其用作查找段落中句点数并从那里确定阅读水平的方法的停止点。

我是 java 的新手,所以这只是我扔东西,我认为会工作

问题是它都说了 我的 getNumberString 和 periodCounter 函数是

Experiment.java:18: error: illegal start of expression
,我的打印命令是
Experiment.java:45: error: <identifier> expected
Experiment.java:45: error: illegal start of type

此外,如果您发现任何您可能想要评论的内容,请随时发表评论!

java file java.util.scanner
1个回答
1
投票

看看你的 { 和 } 在哪里匹配。您已经在 main() 方法的主体内定义了 getNumberString() 。您可能在 Scanner 声明行(以及调用其他方法的其他一些代码)之后缺少结束 }。

“Experiment.java:18: error: illegal start of expression”告诉你不能在这个位置开始方法声明,这是无效的语法。

© www.soinside.com 2019 - 2024. All rights reserved.