定义:基本数据类型对应的对象。
如何获取包装类:直接赋值即可;Integer i=10;
其中的一个成员方法:
public static int parseInt(String s)——把字符串类型的整数转成int 类型的整数。
8种包装类中,除了character都有对应的ParseXXX的方法,进行类型转换。
练习1:键盘录入
键盘录入一些1~100之间的整数,并添加到集合中。直到集合中所有数据和超过200为止。
public class test {
public static void main(String [] arg) {
ArrayList <Integer> list=new ArrayList<>();//创建集合
Scanner sc=new Scanner(System.in);
while(true) {
System.out.println("请输入一个整数");
String str=sc.nextLine();
int num=Integer.parseInt(str);//将字符串强转成int类型
if(num<1||num>100) {
System.out.println("输入数据错误,请重新输入");
continue;
}
list.add(num);//将数据添加到集合中
int Sum=Getsum(list);
if(Sum>200) {
System.out.println("数据停止添加");
break;
}
}
for(int i=0;i<list.size();i++) {
System.out.println(list.get(i));
}
}
public static int Getsum(ArrayList <Integer> list) {
int sum=0;
for(int i=0;i<list.size();i++) {
sum+=list.get(i);
}
return sum;
}
}
练习2:自己实现parselnt方法的效果,将字符串形式的数据转成整数。
要求:字符串中只能是数字不能有其他字符;最少一位,最多10位;0不能开头
public class test {
public static void main(String [] arg) {
String str="123456";
//用正则表达式实现要求
if(!(str.matches("[1-9]\\d{0,9}"))) {
System.out.println("数据错误");
}else {
int num=0;//将字符串的字符遍历出来放入num中
for(int i=0;i<str.length();i++) {
int c=str.charAt(i)-'0';
num=num*10+c;
}
System.out.println(num);
}
}
}
结果:123456
练习3:使用代码计算你活了多少天,用JDK7和JDK8实现。
JDK7:
public class test {
public static void main(String [] arg) throws ParseException {
String birthday="2003年12月11日";
SimpleDateFormat s=new SimpleDateFormat("yyyy年MM月dd日");
Date d=s.parse(birthday);
long time1= d.getTime();//获取毫秒值
//当前时间
long time2=System.currentTimeMillis();
//间隔多少天
long time=time2-time1;
System.out.println(time/1000/60/60/24);
}
}
JDK8:
public class test {
public static void main(String [] arg) throws ParseException {
LocalDate l1=LocalDate.of(2003, 12, 11);
LocalDate l2=LocalDate.now();
System.out.println(ChronoUnit.DAYS.between(l1, l2));
}
}