diff --git "a/work/com/java/minxi/java_20240515/java_2302_\350\260\242\351\224\241\351\225\277_2344310241/Main.java" "b/work/com/java/minxi/java_20240515/java_2302_\350\260\242\351\224\241\351\225\277_2344310241/Main.java" new file mode 100644 index 0000000000000000000000000000000000000000..540b25cfa53e9d2bab782a0972997b2bc258a07a --- /dev/null +++ "b/work/com/java/minxi/java_20240515/java_2302_\350\260\242\351\224\241\351\225\277_2344310241/Main.java" @@ -0,0 +1,91 @@ +package com.java.minxi.java_20240515.java_2302_谢锡长_2344310241; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; + +class Test { + public static void main(String[] args) { + HashSet objects = new HashSet<>(); + objects.add("A"); + objects.add("B"); + objects.add("C"); + objects.add("D"); + objects.add("E"); + System.out.println("检查是否存在" + objects.contains("A")); + objects.remove("B"); + System.out.println("移除之后" + objects); + System.out.println("大小:" + objects.size()); + System.out.println(); + for (Object object : objects) { + System.out.println(object); + } + // 将 `HashSet` 转换为数组,并打印数组中的每个元素 + Object[] arr = objects.toArray(); + + for (String object : objects) { + System.out.println(object); + } + + System.out.println("-------------------------"); + Set result = new HashSet<>(); + Set hashSet1 = new HashSet<>(); + hashSet1.add("a"); + hashSet1.add("b"); + hashSet1.add("c"); + Set hashSet2 = new HashSet<>(); + hashSet2.add("c"); + hashSet2.add("d"); + result.addAll(hashSet1); + result.addAll(hashSet2); + System.out.println("hashSet1 与 hashSet2 的并集为:" + result); + System.out.println("---------------------"); + result.clear(); + result.addAll(hashSet1); + result.retainAll(hashSet2); + System.out.println("hashSet1 与 hashSet2 的交集为:" + result); + System.out.println("---------------------"); + result.clear(); + result.addAll(hashSet1); + result.removeAll(hashSet2); + System.out.println("hashSet1 与 hashSet2 的差集为:" + result); + HashMap hashmap = new HashMap<>(); + hashmap.put("1",10); + hashmap.put("2",20); + hashmap.put("3",30); + System.out.println("hashMap 键 \"2\" 对应的值为:" + hashmap.get("2")); + System.out.println("是否存在为 \"2\" 的键:" + (hashmap.containsKey("1") )); + System.out.println("---------------------"); + System.out.println("hashMap 的键集合打印如下:"); + for (Object o : hashmap.keySet()) { + System.out.println(o); + } + System.out.println("---------------------"); + System.out.println("hashMap 的值集合打印如下:"); + for (Object value : hashmap.values()) { + System.out.println(value); + } + + System.out.println("---------------------"); + hashmap.replace("1", 1000000); + System.out.println("hashMap 更新后的键值对集合打印如下:"); + for (Map.Entry objectObjectEntry : hashmap.entrySet()) { + System.out.println(objectObjectEntry); + } + + System.out.println("---------------------"); + System.out.println("hashMap的大小为:" + hashmap.size()); + + System.out.println("---------------------"); + Map oopMap = new HashMap<>(); + oopMap.put(new Student(), "雪生"); + System.out.println("hashMap 移除后的键值对集合打印如下:"); + for (Map.Entry animalStringEntry : oopMap.entrySet()) { + System.out.println(animalStringEntry); + } + } + public static class Student { + + } + +} diff --git "a/work/com/java/minxi/java_20240516/java_2302_\350\260\242\351\224\241\351\225\277_2344310241/BigDecimalTest.java" "b/work/com/java/minxi/java_20240516/java_2302_\350\260\242\351\224\241\351\225\277_2344310241/BigDecimalTest.java" new file mode 100644 index 0000000000000000000000000000000000000000..94432733d1e67d29bbdf812c41e10301931814bc --- /dev/null +++ "b/work/com/java/minxi/java_20240516/java_2302_\350\260\242\351\224\241\351\225\277_2344310241/BigDecimalTest.java" @@ -0,0 +1,38 @@ +import java.math.BigDecimal; +import java.math.RoundingMode; + +public class BigDecimalTest { + public static void main(String[] args) { + + // 编写一个程序,使用字符串构造函数创建一个 `BigDecimal` 对象。 + BigDecimal a=new BigDecimal('1'); + System.out.println(a.toString()); +// 实现一个方法,接受两个 `BigDecimal` 对象作为参数,执行加、减、乘、除运算。 + BigDecimal b = new BigDecimal(5); + BigDecimal c = new BigDecimal(3); + b= b.add(b); + System.out.println(b); + c = b.subtract(c); + System.out.println(b); + b = b.multiply(c); + System.out.println(b); + b = b.divide(c); + System.out.println(b); +// 舍入操作 +// - 编写一个程序,对一个 `BigDecimal` 对象执行舍入操作,指定舍入模式和精度。 + BigDecimal num=new BigDecimal("123.456789123"); + BigDecimal result=num.setScale(2, RoundingMode.DOWN); + System.out.println(result); +//比较 BigDecimal 对象值 +// - 创建一个方法,比较两个 `BigDecimal` 对象的值是否相等。 + BigDecimal a1=new BigDecimal("12"); + BigDecimal a2=new BigDecimal("45"); + System.out.println(a1.equals(a2)); + +// - 创建一个方法,比较两个 `BigDecimal` 对象的值大小。 + BigDecimal e=new BigDecimal("2"); + BigDecimal f=new BigDecimal("6"); + boolean bool=a.compareTo(c)==0; + System.out.println("比较结果为:a等于b:"+bool); + } +} diff --git "a/work/com/java/minxi/java_20240516/java_2302_\350\260\242\351\224\241\351\225\277_2344310241/DateTest.java" "b/work/com/java/minxi/java_20240516/java_2302_\350\260\242\351\224\241\351\225\277_2344310241/DateTest.java" new file mode 100644 index 0000000000000000000000000000000000000000..7025c2b581dae4701e773d0b11d8a3adaa7f360e --- /dev/null +++ "b/work/com/java/minxi/java_20240516/java_2302_\350\260\242\351\224\241\351\225\277_2344310241/DateTest.java" @@ -0,0 +1,41 @@ +import java.text.DateFormat; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.time.LocalDate; +import java.util.Date; +import java.util.SimpleTimeZone; + +public class DateTest { + public static void main(String[] args) { +// 创建 Date 对象 +// 编写一个程序,创建一个 `Date` 对象,表示当前时间。 + Date date =new Date(); + System.out.println(date.toString()); +// 获取 Date 对象的年份、月份、天数等 +// - 创建一个方法,接受一个 `Date` 对象作为参数,返回该日期的年份、月份和天数。 + LocalDate current=LocalDate.now(); + System.out.println(current+"的年份:"+current.getYear()); + System.out.println(current+"的月份:"+current.getMonth()); + System.out.println(current+"的天数:"+current.getDayOfMonth()); + System.out.println(); +// 格式化 Date 对象 +// - 使用 `SimpleDateFormat` 类将 `Date` 对象格式化为指定的日期格式字符串,如 "yyyy-MM-dd HH:mm:ss"。 + Date dNow=new Date(); + SimpleDateFormat ft=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); + System.out.println("当前时间为:"+ft.format(dNow)); +// Date 转字符串再转回 Date +// - 实现一个程序,将 `Date` 对象转换为字符串,然后将该字符串重新解析 + Date current1=new Date(); + SimpleDateFormat formatter=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + String dateString =formatter.format(current1); +// System类使用 +// - 使用System类获得当前时间戳,将时间戳转换成`Date` 对象,要求按照该格式 "yyyy-MM-dd HH:mm:ss" 打印出当前时间。 + DateFormat df=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + Date date3=null; + try{ + date=df.parse(dateString); + }catch (ParseException e){ + e.printStackTrace(); + } + } +} diff --git "a/work/com/java/minxi/java_20240516/java_2302_\350\260\242\351\224\241\351\225\277_2344310241/Main.java" "b/work/com/java/minxi/java_20240516/java_2302_\350\260\242\351\224\241\351\225\277_2344310241/Main.java" new file mode 100644 index 0000000000000000000000000000000000000000..8da969533cb96ceb00ca8e291bace2ae81dac783 --- /dev/null +++ "b/work/com/java/minxi/java_20240516/java_2302_\350\260\242\351\224\241\351\225\277_2344310241/Main.java" @@ -0,0 +1,46 @@ +import java.util.Arrays; +import java.util.Scanner; +import java.util.stream.IntStream; + +public class Main { + // 1. 绝对值 +// - 编写一个程序,接受一个用户输入的数字,然后输出该数字的绝对值。 + public static void main(String[] args) { + Scanner shu = new Scanner(System.in); + System.out.println("输入一个数字"); + int num = shu.nextInt(); + int result = Math.abs(num); + System.out.println(result); + + // 最小值和最大值 +//- 创建一个方法,接受三个整数作为参数,返回这三个整数中的最小值和最大值。 + int num1=1; + int num2=2; + int num3=3; + int max=Math.max(Math.max(num1,num2),num3); + int min=Math.min(Math.min(num1,num2),num3); + System.out.println(max); + System.out.println(min); + + + // 1. 四舍五入 +// - 编写一个程序,接受一个浮点数作为输入,并将其四舍五入到最近的整数。 + float shu1=12.3f; + System.out.println(Math.round(shu1)); + + + //随机数生成 +//- 使用 `Math.random()` 方法生成一个 0 到 1 之间的随机数,并将其乘以一个用户指定的最大值。 + + System.out.println("输入一个最大值"); + int maxnum= shu.nextInt(); + double du=Math.random()*maxnum; + System.out.println(du); + //计算平均值 +// - 创建一个方法,接受一个整数数组,并返回数组的平均值。 + int[] s = {1,2,3,4,5}; + IntStream sh = Arrays.stream(s); + double average=sh.average().getAsDouble(); + System.out.println("平均数为:"+average); + } +} diff --git "a/work/com/java/minxi/java_20240516/java_2302_\350\260\242\351\224\241\351\225\277_2344310241/Person.java" "b/work/com/java/minxi/java_20240516/java_2302_\350\260\242\351\224\241\351\225\277_2344310241/Person.java" new file mode 100644 index 0000000000000000000000000000000000000000..81ae1a205627c53759762e19a7b959f97f93555c --- /dev/null +++ "b/work/com/java/minxi/java_20240516/java_2302_\350\260\242\351\224\241\351\225\277_2344310241/Person.java" @@ -0,0 +1,50 @@ +import java.util.Objects; + +public class Person { + + String name; + int age; + + public Person() { + } + + public Person(String name, int age) { + this.name = name; + this.age = age; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public int getAge() { + return age; + } + + public void setAge(int age) { + this.age = age; + } + + @Override + public String toString() { + return "Person{" + + "name='" + name + '\'' + + ", age=" + age + + '}'; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (!(o instanceof Person)) return false; + Person person = (Person) o; + return age == person.age && Objects.equals(name, person.name); + } + + +} +