题目:日期识别
语言:java
语法错误:1.数组的长度:arr.length();//一定要加括号
2.str.charAt(i);
3.对于 String[] str=new String[]{"Feb","Jau"};
for(int i=0;i<str.length();i++)//这里面不能写str.length()//至于为什么,我也没找到解决方法
4.空格得用" ",//一定得是双引号
5.字符串String str=""
逻辑:本质上是考字符串的拼接。例如Feb08:输入的是一个字符串,所以得把08转换成数字,可以先从字符串遍历开始,把"08"提出来,最后用Integer.parseInt("08")把字符串"08"转换成08。创建一个包含12个月份的字符串,因为索引是从0开始,会有一位的偏移,所以最后输出为(i+1+" "+day);
代码展示:
import java.util.*;
public class Main{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
String str=sc.next();
String str1="";
int day;
String[] str2=new String[] {"Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"};
for(int i=3;i<str.length();i++){
str1=str1+str.charAt(i);
}
day=Integer.parseInt(str1);
for(int i=0;i<12;i++){
if(str.contains(str2[i])){
System.out.println(i+1+" "+day);
break;
}
}
}
}
收获:1.字符串的相关知识。
薄弱:字符串