繁体   English   中英

在Java中执行方法子字符串时收到错误

[英]Receiving an error while executing method substring in Java

我必须做一个字符串练习,我必须输入一个像 dd/mm/yyyy 这样的日期。 一切正常,除非我输入一个空格作为输入,它会打印此错误:

Exception in thread "main" java.lang.StringIndexOutOfBoundsException: begin 0, end 2, length 1
    at java.base/java.lang.String.checkBoundsBeginEnd(String.java:3720)
    at java.base/java.lang.String.substring(String.java:1909)
    at ex5.main(ex5.java:17)

这是我的代码:

import cs1.*;
public class ex5
{
   public static void main(String[] args) 
   {
      String data = "18/08/2011";



      //asking for the data
      System.out.printf("DATA: ");
      data = Keyboard.readString();



      //system.out
      System.out.printf("DIA: %s %n", data.substring(0, 2));
      System.out.printf("MES: %s %n", data.substring(3, 5));
      System.out.printf("ANY: %s", data.substring(6, 10)); 
   }
}

我必须做一个字符串练习,在该练习中,我必须输入类似dd / mm / yyyy的日期。 一切正常,除非我输入空格作为输入,否则会打印此错误:

Exception in thread "main" java.lang.StringIndexOutOfBoundsException: begin 0, end 2, length 1
    at java.base/java.lang.String.checkBoundsBeginEnd(String.java:3720)
    at java.base/java.lang.String.substring(String.java:1909)
    at ex5.main(ex5.java:17)

这是我的代码:

import cs1.*;
public class ex5
{
   public static void main(String[] args) 
   {
      String data = "18/08/2011";



      //asking for the data
      System.out.printf("DATA: ");
      data = Keyboard.readString();



      //system.out
      System.out.printf("DIA: %s %n", data.substring(0, 2));
      System.out.printf("MES: %s %n", data.substring(3, 5));
      System.out.printf("ANY: %s", data.substring(6, 10)); 
   }
}

我必须做一个字符串练习,在该练习中,我必须输入类似dd / mm / yyyy的日期。 一切正常,除非我输入空格作为输入,否则会打印此错误:

Exception in thread "main" java.lang.StringIndexOutOfBoundsException: begin 0, end 2, length 1
    at java.base/java.lang.String.checkBoundsBeginEnd(String.java:3720)
    at java.base/java.lang.String.substring(String.java:1909)
    at ex5.main(ex5.java:17)

这是我的代码:

import cs1.*;
public class ex5
{
   public static void main(String[] args) 
   {
      String data = "18/08/2011";



      //asking for the data
      System.out.printf("DATA: ");
      data = Keyboard.readString();



      //system.out
      System.out.printf("DIA: %s %n", data.substring(0, 2));
      System.out.printf("MES: %s %n", data.substring(3, 5));
      System.out.printf("ANY: %s", data.substring(6, 10)); 
   }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM