Java实训Day5

一.方法重载的一种实现方法

public class Demo01 {
    public static void main(String[] args) {
        System.out.println(add());
        System.out.println(add(1));
        System.out.println(add(1,2));
        System.out.println(add(1,2,3));
    }
    public static int add(int...args){
        int sum = 0;
        for(int i=0;i<args.length;i++) {
            sum += args[i];
        }

         return sum;
    }
}
二.有关包装类Integer相关代码的调试。例举出八种包装类
public class IntegerDemo01 {

    public static void main(String[] args) {
        Integer it1 = new Integer(10);
        System.out.println("it1=" + it1);
        //将integer 类型转换为int为手动拆箱
        int i = it1.intValue();
        System.out.println(i);
        //将int 类型转换为integer为手动装箱

        Integer integer = Integer.valueOf(i);
        System.out.println(integer);
        Integer it2 = new Integer(20);
        System.out.println("it2=" + it2);

        //jdk1.5以后提供了自动装箱和拆箱的机制
        Integer i1 = 12;
        int i2 = i1;
        System.out.println(i1);
        System.out.println(i2);
        String str = "123";
        int i3 =Integer.parseInt(str);
        System.out.println(i3);

        //包装类 Byte,Integer,Short,Long,Float,Double,Boolean,Character


    }
}
三.有关equals方法的重写
import java.util.Objects;

public class Student {
    private String name;
    private int id;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public Student(){};

    public Student(String name, int id) {
        this.name = name;
        this.id = id;
    }

    /*@Override
    public boolean equals(Object o){
        Student student = (Student)o;
        return this.getId() == student.getId();

    }*/


    /*public boolean equals(Object o){
        if(this == o){
            return true;
        }
        if(null == o){
            return false;
        }
        if(o instanceof Student){
            Student stu = (Student)o;
            if(this.getName().equals(stu.getName())&&this.getId()==stu.getId()){
                return true;
            }

        }
        return false;
    }
    */

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        Student student = (Student) o;
        return id == student.id &&
                Objects.equals(name, student.name);
    }

    @Override
    public int hashCode() {
        return Objects.hash(name, id);
    }
}
public class StudentTest {
    public static void main(String[] args) {
        Student student1 = new Student("zzf",1002);
        Student student2= new Student("zzf",1002);

        //System.out.println(student1.getName().equals(student2.getName()));
        //System.out.println(student1.getName()==student2.getName());
        System.out.println(student1.equals(student2));

    }
}

四.String类型的变量怎么作比较,是否能用==

public class StringDemo01 {
    public static void main(String[] args) {
        String str1 = "abc";
        String str2 = "123";
        System.out.println(str1==str2);

        String str3 = new String("abc");
        String str4 = new String("abc");
        System.out.println(str1==str3);
        System.out.println(str4==str3);
        String str5 = "abc";
        System.out.println(str5==str1);

    }
}

五.有关StringBuilder类

public class StringBuilderDemo00 {

    public static void main(String[] args) {
        StringBuilder sb1 = new StringBuilder();
        System.out.println("初始容量为" + sb1.capacity());
        System.out.println("长度为" + sb1.length());
        StringBuilder sb2 = new StringBuilder("heihei");
        System.out.println("初始容量为" + sb2.capacity());
        System.out.println("长度为" + sb2.length());
        System.out.println(sb2.insert(0, "zzf"));
        System.out.println(sb2.append(99));
        System.out.println(sb2.delete(0, 3));
        System.out.println(sb2.replace(0, 6, "haha"));
        System.out.println(sb2.reverse());
        System.out.println(sb2.indexOf("h"));
    }
}
六.Bigdecimal类(用来准确计算运算结果)
import java.math.BigDecimal;

public class BigdecimalTest {
    public static void main(String[] args) {
        double d1 = 0.1 + 0.2;

        BigDecimal bd1 = new BigDecimal("0.1");
        BigDecimal bd2 = new BigDecimal("0.2");
        System.out.println(bd1.add(bd2));
        System.out.println(bd1.subtract(bd2));
        System.out.println(bd1.multiply(bd2));
        System.out.println(bd1.divide(bd2,BigDecimal.ROUND_HALF_UP));
    }
}

七.Date类

public class DateTest01 {
    public static void main(String[] args) {
        Date date = new Date();
        System.out.println(date);
        Date date1 = new Date(10000);
        System.out.println(date1);
        date1.setTime(1000);
        System.out.println(date1.getTime());
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String format = simpleDateFormat.format(date);
        System.out.println(format);
    }
}

八.LocalDate类

import java.time.LocalDate;

public class LocalDateTest {
    public static void main(String[] args) {
        //获取本地年月日
        LocalDate id = LocalDate.now();
        System.out.println(id);

        //分别获取年月日
        int year = id.getYear();
        int month = id.getMonthValue();
        int day = id.getDayOfMonth();
        System.out.println(year);
        System.out.println(month);
        System.out.println(day);
        //一年中的第几天
        int dayOfYear = id.getDayOfYear();
        System.out.println(dayOfYear);
        //星期几
        int dayOfWeek = id.getDayOfWeek().getValue();
        System.out.println(dayOfWeek);

        //修改某个信息  withYear withmonth withDayofMonth withDayOfYear
         LocalDate newLocalDate =id.withYear(2050);
        System.out.println(newLocalDate);

        //添加某个信息plusYears plusMonths plusDays plusWeeks
        //加两周
        LocalDate newLocalDate1 = id.plusWeeks(1);
        System.out.println(newLocalDate1);

        //减少某个信息minusYears minusMonths minusDays minusWeeks
        LocalDate newLocalDate2 = id.minusWeeks(2);
        System.out.println(newLocalDate2);

        //获取指定日期的localDate对象
        LocalDate newLocalDate3 = LocalDate.of(2067,2,23);
        System.out.println(newLocalDate3);

        //判断两个日期,是否相等,在前还是在后
        LocalDate newLocalDate4 = LocalDate.of(2064,3,28);
        LocalDate newLocalDate5 = LocalDate.of(2064,3,28);
        System.out.println(newLocalDate4.equals(newLocalDate5));
        System.out.println(newLocalDate4.isBefore(newLocalDate5));
        System.out.println(newLocalDate4.isAfter(newLocalDate5));

    }
}
九.LocalTime类
import java.time.LocalTime;

public class LocalTimeTest {
    public static void main(String[] args) {
        //获取本地时,分,秒,纳秒
        LocalTime it = LocalTime.now();
        System.out.println(it);

        //分别获取时,分,秒,纳秒
        int hour = it.getHour();
        int minute = it.getMinute();
        int second = it.getSecond();
        int nano = it.getNano();
        System.out.println(hour);
        System.out.println(minute);
        System.out.println(second);
        System.out.println(nano);


        //修改某个信息  withHour withMinute withSecond withNano
        LocalTime it1 =it.withHour(10);
        System.out.println(it1);

        //添加某个信息plusHours plusMinute plusSecond plusNano
        //加两周
        LocalTime it2 = it.plusHours(1);
        System.out.println(it2);

        //减少某个信息minusHours minusMinute minusSecond minusNano
        LocalTime it3 = it.minusHours(2);
        System.out.println(it3);

        //获取指定时间的localTime对象
        LocalTime it4 = LocalTime.of(12,12,12);
        System.out.println(it4);

        //判断两个时间,是否相等,在前还是在后
        LocalTime it5 = LocalTime.of(10,12,28);
        LocalTime it6 = LocalTime.of(10,12,28);
        System.out.println(it5.equals(it6));
        System.out.println(it5.isBefore(it6));
        System.out.println(it5.isAfter(it6));

    }
}
十.LocalDateTime类
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;

public class LocalDateTimeTest {
    public static void main(String[] args) {
        //获取本地年月日,时分秒纳秒
        LocalDateTime idt = LocalDateTime.now();
        System.out.println(idt);

        //分别获取年月日,时分秒纳秒
        int year = idt.getYear();
        int month = idt.getMonthValue();
        int day = idt.getDayOfMonth();
        int hour = idt.getHour();
        int minute = idt.getMinute();
        int second = idt.getSecond();
        int nano = idt.getNano();

        System.out.println(year);
        System.out.println(month);
        System.out.println(day);
        System.out.println(hour);
        System.out.println(minute);
        System.out.println(second);
        System.out.println(nano);
        //一年中的第几天
        int dayOfYear = idt.getDayOfYear();
        System.out.println(dayOfYear);
        //星期几
        int dayOfWeek = idt.getDayOfWeek().getValue();
        System.out.println(dayOfWeek);

        //修改某个信息  withYear withmonth withDayofMonth withDayOfYear withHour withMinute withSecond withNano
        LocalDateTime idt1 =idt.withYear(2050);
        System.out.println(idt1);

        //添加某个信息plusYears plusMonths plusDays plusWeeks
        //加两周
        LocalDateTime idt2 = idt.plusWeeks(1);
        System.out.println(idt2);

        //减少某个信息minusYears minusMonths minusDays minusWeeks
        LocalDateTime idt3 = idt.minusWeeks(2);
        System.out.println(idt3);

        //获取指定日期时间的localDateTime对象
        LocalDateTime idt4 = LocalDateTime.of(2067,2,23,16,56,34);
        System.out.println(idt4);

        //判断两个日期时间,是否相等,在前还是在后
        LocalDateTime idt5 = LocalDateTime.of(2064,3,28,12,12,12);
        LocalDateTime idt6 = LocalDateTime.of(2064,3,28,12,12,12);
        System.out.println(idt5.equals(idt6));
        System.out.println(idt5.isBefore(idt6));
        System.out.println(idt5.isAfter(idt6));

        //可以把LocalDateTime转成localDate和localTime
        LocalDate id = idt.toLocalDate();
        LocalTime it = idt.toLocalTime();
        LocalDateTime idt7 = LocalDateTime.of(id,it);
        System.out.println(id);
        System.out.println(it);
        System.out.println(idt7);
    }
}
十一.Calendar类
import java.util.Calendar;
import java.util.Date;

public class CalendarTest {
    public static void main(String[] args) {
        //当前系统时间
        Calendar c = Calendar.getInstance();


        //设置系统时间
        Date d = new Date(100000L);
        //c.setTime(d);

        //返回日历中的具体值
        int year = c.get(Calendar.YEAR);
        int month = c.get(Calendar.MONTH)+1;
        int day = c.get(Calendar.DAY_OF_MONTH);
        int hour = c.get(Calendar.HOUR);
        int minute = c.get(Calendar.MINUTE);
        int second  = c.get(Calendar.SECOND);
        System.out.println(year+":"+month+":"+day+":"+hour+":"+minute+":"+second);


        //为指定日历字段增加或减去指定的时间量
        c.add(Calendar.YEAR,1);
        System.out.println(c.get(Calendar.YEAR)+"年");
        //为日历字段设置指定值
        c.set(Calendar.YEAR,1960);
        System.out.println(c.get(Calendar.YEAR)+"年");




    }
}

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值