• Java的输入方式总结


      写java代码的时候,经常会遇到的情况就是输入输错了怎么办?大部分想的是用一个if判断,但是用if判断的话我们就无法让用户再次输入,因为if语句程序执行后就会直接退出程序。因此要想实现循环就要用while(),将输入语句放到里面实现循环。关于输入,一共有两种方式:

      <1>使用字符串输入  -->  使用这个只能输入字符串,然后转换为你想要的

        BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); 
        bf.readLine();
      <2>使用Scanner,这个的话也只有输入字符串才不会报错,若你定义为输入整型,那么输入其他类型的话就会报错,可以这么说Scanner本身就是一个异常。
      下面分别举例说明:
      1、while()判断输入是否正确,同时给第二次输入的机会    ---   这个里面也有Scanner的使用就不再举例
      这个方法是用于判断第二次输入的字符串是否是第一次输入的字串

      private void replaceMethed() {
        Scanner s = new Scanner(System.in);
        System.out.println("===欢迎使用===");
        System.out.print("请输入一串字符串:");
        String str = s.next();
        while (true) {
          System.out.print("请输入上面的字符串的一个字串:");
          String subStr = s.next();
          int index = str.indexOf(subStr);
          // 只要索引不为-1,就是后面输入的字符串是前面字符串的一个字串
          if (index != -1) {
            // 字符串替换,用"hello"替换subStr
            str = str.replaceAll(subStr, "hello");
            System.out.println("替换后的字符串为:" + str);
            break;
          } else {
            System.out.println("您输入的字符串有误,请重新输入!");
          }

        }
      }

      2、BufferedReader输入

      BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
      String startTime = null; // 输入的上机时间
      Date startDate = null; // 格式转换后的上机时间
      while (true) {
      try {
        System.out.print("请输入上机时间(hh:mm格式):");
        startTime = bf.readLine();
        startDate = sdf.parse(startTime);

        //如果没有输出就跳出循环
        break;
      } catch (ParseException e) {
        System.out.println("格式错误,请重新上机时间(hh:mm格式):");
      }

      

  • 相关阅读:
    13 | 效率为王:脚本与数据的解耦 + Page Object模型
    关于编程与生活
    我的python学习笔记
    Tarjan学习笔记
    web----https请求过程
    JVM----堆内存设置原理
    算法----快速排序
    SpringCloud----spring security Oauth2认证解决方案
    Mysql----insert/update/delete
    课外知识----单点登录
  • 原文地址:https://www.cnblogs.com/tyzl/p/5486923.html
Copyright © 2020-2023  润新知