侠義芝士 2019-09-07 14:44 采纳率: 100%
浏览 492
已采纳

初学者搞不定Java输入流的关闭

不懂应该在哪设置输入流的关闭,试了几个地方,但接着循环,本来要输入的就直接程序关闭报错。(也就几个地方可以放close(),可总是搞不定)

package Week2;

import java.util.Scanner;

public class homework4_16 {

public static void main(String[] args) {
    String s1 = "Welcome to Java";
    String s2 = "Programming is fun";
    String s3 = "Welcome to Java";
    int i = 1;
    do {
        System.out.print("输入字母编号a-v:");
        Scanner input = new Scanner(System.in);
        String ch = input.nextLine();
        switch (ch) {
        case "a":
            System.out.println(s1 == s2);
            break;
        case "b":
            System.out.println(s2 == s3);
            break;
        case "c":
            System.out.println(s1.equals(s2));
            break;
        case "d":
            System.out.println(s1.equals(s3));
            break;
        case "e":
            System.out.println(s1.compareTo(s2));
            break;
        default:
            continue;
        }
        System.out.print("继续请输入1,退出输入0 :");
        i=input.nextInt();
        while(i!=1&&i!=0) {
            System.out.print("请输入1或0 :");
            i=input.nextInt();
        }
    } while (i == 1);
}

}

  • 写回答

3条回答 默认 最新

  • Json-Huang 2019-09-07 15:20
    关注

    建议用加上try-catch-finally,在finally执行关闭流操作即可
    try {
    }catch(Exception e){
    }
    finally{
    //这里关闭流操作
    }

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥20 SQL server表计算问题
  • ¥15 C# P/Invoke的效率问题
  • ¥20 thinkphp适配人大金仓问题
  • ¥20 Oracle替换.dbf文件后无法连接,如何解决?(相关搜索:数据库|死循环)
  • ¥15 数据库数据成问号了,前台查询正常,数据库查询是?号
  • ¥15 算法使用了tf-idf,用手肘图确定k值确定不了,第四轮廓系数又太小才有0.006088746097507285,如何解决?(相关搜索:数据处理)
  • ¥15 彩灯控制电路,会的加我QQ1482956179
  • ¥200 相机拍直接转存到电脑上 立拍立穿无线局域网传
  • ¥15 (关键词-电路设计)
  • ¥15 如何解决MIPS计算是否溢出