资源泄漏:'sc'永远不会关闭

问题描述 投票:1回答:3

用于计算特定字符,字母或数字在句子中出现次数的程序。

但是我一直在收到消息:

资源泄漏:'sc'永远不会关闭

我正在使用Java和Eclipse。我该怎么办?

import java.util.Scanner;
class Number-count {
    public static void number - count(String args[]) {
        String s;
        char ch;
        int count = 0;
        Scanner SC = new Scanner(System. in );
        System.out.println("Enter a sentence");
        String str = sc.nextLine();
        System.out.println("Enter a character to be searched for occurence");
        s = sc.nextLine();
        char c = s.charAt(0);
        for (int i = 0; i < str.length(); i++) {
            ch = str.charAt(i);
            if (ch == c) {
                count++;
            }
        }
        System.out.println("Character " + c + " occur " + count + " times");
    }
}
java memory-leaks java.util.scanner
3个回答
2
投票

扫描仪对象在使用完毕后需要关闭。因此,在完成它之后,您应该在main方法结束之前调用以下内容

SC.close();

1
投票

扫描仪工作完成后放:sc.close();

它正在100%工作


0
投票

试试这个代码

public static void number - count(String args[]) throws IOException {
 Scanner sc = new Scanner(System.in);
   try{
        //your code
      }
   finally {
   sc.close();
   } 
   }
© www.soinside.com 2019 - 2024. All rights reserved.