简易Java文件管理器 + “Switch - case”语句 = ERROR?

想写一个Java文件管理器,帮我把不知道保存到哪里去了的命运二屏幕截图找出来, 一开始不加“switch — case”语句之前单独测试过,这两个功能都是可以的,但是加了之后就不行了,我实在看不出是什么地方有问题,就只能来请教大家了。


package 文件管理器;

import java.io.File;

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

public class 文件管理器 {

    public static void main(String[] args) {
        //输入字符串数据
        //System.out.println("想要使用“目标路径 + 后缀名 来查找文件");
        //System.out.println("请按“1”");
        //System.out.println("想要使用“目标路径 + 关键字 来查找文件");
        //System.out.println("请按“2”");
        
        Scanner sc = new Scanner(System.in);
        Scanner scanner = new Scanner(System.in);
        int Chioce = sc.nextInt();
        scanner.nextLine();
        switch(Chioce){
        case (1):
        //按后缀名查找
        String inputString_log =sc.nextLine();
        String inputString_extendname =sc.nextLine();
        
        指定后缀名检索文件 fileAccept = new 指定后缀名检索文件();
        File dir = new File(inputString_log);//文件目录"."是当前文件
        
        //调用方法
        fileAccept.setExtendName(inputString_extendname);
        
        String fileName[] = dir.list(fileAccept);
        for(String name:fileName) {
            System.out.println(name);
            System.out.println(dir.getName() + dir.getAbsolutePath());//获得绝对路径
        }
        break;
        
        case (2):
        //按关键词查找
        String directoryA =sc.nextLine();//最大的文件的目录
        String KeyWord =sc.nextLine();//关键词
        //传入数据(一步写成):
        List<String> result = 指定关键词检索文件.SearchFile(KeyWord,directoryA);
        System.out.println(result);//这里才输出数组
        break;
        
        case(5):break;
    }
    }
}

public class 指定关键词检索文件{
    public static List<String> SearchFile(String Keyword,String directory){
        
        List<String> result = new ArrayList<>();//创建String类型数组列表result
        
        
        File[] files= new File(directory).listFiles();//创建了一个目录文件对象
        
        
        for(File file:files) {
            if(file.isDirectory()){
                result.addAll(SearchFile(Keyword,file.getAbsolutePath()));
            }
            else{
                try {
                    String content = new String(Files.readAllBytes(Paths.get(file.getAbsolutePath())), StandardCharsets.UTF_8);
                    
                    if(content.contains(Keyword)){
                        result.add(file.getAbsolutePath());
                    }
                        
                } catch (IOException e) {
                    e.printStackTrace();
                }
                
            }
            
        }
        return result;
    }
}


public class 指定后缀名检索文件 implements FilenameFilter {
    private String extendname;
    public void setExtendName(String s) {//设置后缀名
        extendname = "." + s;
    }
    public boolean accept(File dir,String name) {
        return name.endsWith(extendname);
    }
}

case 那里,不要括号啊。

还是不行,具体错误就是这样

img


也就是说,本来我需要输入两个数据,在多输入一个数字选择操作之后应该也是一样的,但是现在我输入了文件目录之后,点击回车立刻就会报错,就算是把另一个变量也放在同一行也会报错

img