import java.util.Calendar;
import java.util.Scanner;
public class FebDemo {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int y=sc.nextInt(); //输入年份
Calendar c=Calendar.getInstance(); //使用默认时区获取一个日历
c.set(y, 2, 0); //设置日期,由于默认一月为0,所以三月为2,
//而三月零号即为三月一号减一,默认是二月的最后一天
int day=c.getActualMaximum(Calendar.DAY_OF_MONTH);//返回该日历字段中的日期。
System.out.println(day); //输出二月天数
}
}
2.正则表达式:符合一定规则的字符串。
import java.util.Scanner;
import java.util.regex.Pattern;
public class qqDemo2 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
String s=sc.nextLine(); //输入所判断字符串
String reg="[1-9][0-9]{4,14}"; //编写正则表达式
boolean b=Pattern.matches(reg, s);//返回判断结果
System.out.println(b);
}
}
3.规定字符在正则表达式中的表示:
import java.util.Scanner;
public class regDemo2 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
String s=sc.nextLine(); //键入字符串
String reg=" "; //正则表达式空格
String[]strs=s.split(reg); //按正则规则断开
char[][]arr=new char[strs.length][] ; //建立二位字符数组接受字符串数组
for (int i = 0; i < strs.length; i++) {
arr[i]=strs[i].toCharArray();
}
for (int j = 0; j < arr.length-1; j++) { //冒泡排序,调整每个一维数组的索引
for (int i = 0; i < arr.length-j-1; i++) { //若一维数组长度不同,直接判断大小
char[]ar=null;
if(arr[i].length>arr[i+1].length){
ar=arr[i];
arr[i]=arr[i+1];
arr[i+1]=ar;
}
else if(arr[i].length==arr[i+1].length){//长度相同,一次比较
for (int j2 = 0; j2 < arr[i].length; j2++) {
if(arr[i][j2]>arr[i+1][j2]){
ar=arr[i];
arr[i]=arr[i+1];
arr[i+1]=ar;
break; //得出结果时退出
}else if(arr[i][j2]<arr[i+1][j2]){
break; //若为升序直接退出,余下位数不比较
}
}
}
}
}
for (int i = 0; i < arr.length; i++) { //遍历二维数组
for (int j = 0; j < arr[i].length; j++) {
System.out.print(arr[i][j]);
}
System.out.print(" ");
}
}
}