数据从控制台输入:
Scanner in= new Scanner(System.in);
int x= in.nextInt();//x表示输入的变量
in.close();//关闭流
冒泡排序的语法:
基本原理:比较两个相邻的元素,进行交换
for (int i = 0; i < arr.length; i++) {//数组arr[]
for (int j = 0; j < arr.length - 1 - i; j++) {
if (arr[j] > arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
定义一个方法,实现给一个数组中添加元素
public class Demo06 {
public int[] addElement(int[] src,int ...elements) {
int[] dest=new int[src.length+elements.length];
System.arraycopy(src, 0, dest, 0, src.length);
System.arraycopy(elements, 0, dest, src.length, elements.length);
return dest;
}
public static void main(String[] args) {
Demo06 test=new Demo06();
int[] src= {1,2,3};
int[] dest=test.addElement(src,4,5,6,7);
System.out.println(Arrays.toString(dest));
}
}
输出结果为:
[1, 2, 3, 4, 5, 6, 7]
arraycopy(Object src, int srcPos,Object dest, int destPos,int length);
src - 原数组
srcPos -原数组中的起始位置
dest -目标数组
destPos - 目标数据中的起始位置
length - 要复制的数组元素的数量
获取身份证的一些信息:
public class Demo07 {
public static void main(String[] args) {
String card="******************";//个人隐私,就不写了
//1.截取出区域编码
String str1=card.substring(0,6);
System.out.println(str1);
//2.截取出出生年月
String str2=card.substring(6, 14);
System.out.println(str2);//20010815
//3.输出格式:xxxx年xx月xx日
int year;
year=Integer.parseInt(str2.substring(0, 4));
int month;
month=Integer.parseInt(str2.substring(4,6));
int day;
day=Integer.parseInt(str2.substring(6, 8));
System.out.println(year+"年"+month+"月"+day+"日");
//4.截取出倒数第二位,判断一下奇数为男,偶数为女
char num=card.charAt(16);
//String car=card.substring(card.length()-2,card.length()-1);
//int num=Integer.parseInt(car);
if(num%2==0)
System.out.println("女");
if(num%2!=0)
System.out.println("男");
}
}
正则表达式:
通配符:
*表示重复0次或多次
+表示重复1次或多次
?表示重复0次或1次
身份证正则表达式:
^[1-9]\\d{5}(18|19|20|(3\\d))\\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\\d{3}[0-9Xx]$
区域编码规则: 区域编码长6位,以数字1-9开头,后5位为0-9的数字 根据以上规则
出生年份规则: 出生年份码长4位,以数字18,19或20,30开头,剩余两位为0-9的数字
出生月份规则: 出生月份长2位,第一位数字为0,第二位数字为1-9 或者第一位数字为1,第二位数字为0-2
出生日期码规则: 出生日期长2位,第一位数字为0-2,第二位数字为1-9 或者是10,20,30,31
手机号正则表达式:
^1[3578][01379]\\d{8}|1[34578][01256]\\d{8}|(134[012345678]\\d{7}|1[34578][012356789]\\d{8})$
邮箱正则表达式:
^[_a-z0-9-]+(\\.[_a-z0-9-]+)*@[a-z0-9-](\\.[a-z0-9-]+)*(\\.[a-z]{2,})$
或^[A-Za-z0-9\u4e00-\u9fa5]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$