diff --git "a/work/com/java/minxi/java_20240426/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/Animal.java" "b/work/com/java/minxi/java_20240426/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/Animal.java" index 87fa4c362927ffc85dd4b4ecfa0f10bf8394024c..a60d01e5807faf7382e190c621db258e98fd673e 100644 --- "a/work/com/java/minxi/java_20240426/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/Animal.java" +++ "b/work/com/java/minxi/java_20240426/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/Animal.java" @@ -4,6 +4,11 @@ public class Animal { //包含属性name和age public String name; public int age; + + public Animal() { + + } + //并定义一个方法showInfo用于展示动物的信息 public void showInfo() { System.out.println("Name: " + name + " Age: " + age); diff --git "a/work/com/java/minxi/java_20240515/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/Animal.java" "b/work/com/java/minxi/java_20240515/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/Animal.java" new file mode 100644 index 0000000000000000000000000000000000000000..4ce8984e92772db38d6c4093191177411b56edd0 --- /dev/null +++ "b/work/com/java/minxi/java_20240515/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/Animal.java" @@ -0,0 +1,4 @@ +package com.java.minxi.java_20240515.java_2302_郑祺海_2344310215; + +public class Animal { +} diff --git "a/work/com/java/minxi/java_20240515/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/mapMain.java" "b/work/com/java/minxi/java_20240515/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/mapMain.java" index f8e14e68a44e27e89a1f25f61fcc956be99aaedc..60b848a92ecb323ca9a5498df1f8d23b3ac1af21 100644 --- "a/work/com/java/minxi/java_20240515/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/mapMain.java" +++ "b/work/com/java/minxi/java_20240515/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/mapMain.java" @@ -1,5 +1,7 @@ package com.java.minxi.java_20240515.java_2302_郑祺海_2344310215; +import com.java.minxi.java_20240426.java_2302_郑祺海_2344310215.Animal; + import java.util.*; public class mapMain { diff --git "a/work/com/java/minxi/java_20240516/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/BigDecimalExample.java" "b/work/com/java/minxi/java_20240516/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/BigDecimalExample.java" new file mode 100644 index 0000000000000000000000000000000000000000..fe90d5cb8fec9cf5b6293ac4329b3563f7ef6b91 --- /dev/null +++ "b/work/com/java/minxi/java_20240516/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/BigDecimalExample.java" @@ -0,0 +1,72 @@ +package com.java.minxi.java_20240516.java_2302_郑祺海_2344310215; +import java.math.BigDecimal; +import java.math.RoundingMode; +import java.util.Scanner; + + +public class BigDecimalExample { + public static void main(String[] args) { +// 创建BigDecimal对象 + String numberAsString = "123.456"; + BigDecimal bigDecimalNumber = new BigDecimal(numberAsString); + System.out.println("BigDecimal对象值为:" + bigDecimalNumber); + +// 执行加、减、乘、除运算 + Scanner scanner = new Scanner(System.in); + BigDecimal num1 = new BigDecimal("10"); + BigDecimal num2 = new BigDecimal("5"); + + System.out.println("输入计算方式"); + String operator = scanner.next(); + + BigDecimal result = calculate(num1, num2, operator); + System.out.println("计算结果为:" + result); + +// 对BigDecimal对象执行舍入操作 + BigDecimal originalNumber = new BigDecimal("123.456"); + int scale = 2; // 精度 + RoundingMode roundingMode = RoundingMode.HALF_UP; // 舍入模式 + BigDecimal roundedNumber = originalNumber.setScale(scale, roundingMode); + System.out.println("舍入后的BigDecimal对象值为:" + roundedNumber); + +// 比较两个BigDecimal对象的值是否相等 + BigDecimal num3 = new BigDecimal("1"); + BigDecimal num4 = new BigDecimal("1"); + System.out.println("两个BigDecimal对象是否相等:" + isEqual(num3, num4)); + +// 比较两个BigDecimal对象的值大小 + System.out.println("两个BigDecimal对象的大小关系:" + compareValues(num3, num4)); + } + + // 实现加、减、乘、除运算 + public static BigDecimal calculate(BigDecimal num1, BigDecimal num2, String operator) { + BigDecimal result = BigDecimal.ZERO; + switch (operator) { + case "+": + result = num1.add(num2); + break; + case "-": + result = num1.subtract(num2); + break; + case "*": + result = num1.multiply(num2); + break; + case "/": + result = num1.divide(num2); + break; + default: + System.out.println("输入错误"); + } + return result; + } + + // 比较两个BigDecimal对象的值是否相等 + public static boolean isEqual(BigDecimal num1, BigDecimal num2) { + return num1.equals(num2); + } + + // 比较两个BigDecimal对象的值大小 + public static int compareValues(BigDecimal num1, BigDecimal num2) { + return num1.compareTo(num2); + } +} diff --git "a/work/com/java/minxi/java_20240516/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/DateExample.java" "b/work/com/java/minxi/java_20240516/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/DateExample.java" new file mode 100644 index 0000000000000000000000000000000000000000..957d613268cc3d18d7d0383d5d7b2114a24fb03e --- /dev/null +++ "b/work/com/java/minxi/java_20240516/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/DateExample.java" @@ -0,0 +1,59 @@ +package com.java.minxi.java_20240516.java_2302_郑祺海_2344310215; + +import java.text.SimpleDateFormat; +import java.util.Date; + +public class DateExample { + public static void main(String[] args) { + //创建 Date 对象 + Date currentDate = new Date(); + System.out.println("当前时间:" + currentDate); + + //获取 Date 对象的年份、月份、天数等 + printDateInfo(currentDate); + + //格式化 Date 对象 + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + String formattedDate = sdf.format(currentDate); + System.out.println("格式化后的日期:" + formattedDate); + + + //Date 转字符串再转回 Date + String dateStr = "2022-01-15 14:30:00"; + Date parsedDate = parseDate(dateStr); + System.out.println("解析后的日期:" + parsedDate); + + //System类使用 + long currentTimeMillis = System.currentTimeMillis(); + System.out.println("当前时间戳:" + currentTimeMillis); + + Date systemDate = new Date(currentTimeMillis); + System.out.println("当前时间:" + sdf.format(systemDate)); + } + + + //Date 对象的年份、月份、天数等 + public static void printDateInfo(Date date) { + SimpleDateFormat sdf0 = new SimpleDateFormat("yyyy-MM-dd"); + String[] dateInfo = sdf0.format(date).split("-"); + + int year = Integer.parseInt(dateInfo[0]); + int month = Integer.parseInt(dateInfo[1]); + int day = Integer.parseInt(dateInfo[2]); + + System.out.println("年份:" + year); + System.out.println("月份:" + month); + System.out.println("天数:" + day); + } + + // 将字符串解析为 Date 对象 + public static Date parseDate(String dateStr) { + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + try { + return sdf.parse(dateStr); + } catch (Exception e) { + e.printStackTrace(); + return null; + } + } +} diff --git "a/work/com/java/minxi/java_20240516/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/MathExample.java" "b/work/com/java/minxi/java_20240516/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/MathExample.java" new file mode 100644 index 0000000000000000000000000000000000000000..e48631476e8d6efd626c5672a2d2794b0a9d8f09 --- /dev/null +++ "b/work/com/java/minxi/java_20240516/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/MathExample.java" @@ -0,0 +1,50 @@ +package com.java.minxi.java_20240516.java_2302_郑祺海_2344310215; + +import java.util.Scanner; + +public class MathExample { + public static void main(String[] args) { + //绝对值 + Scanner scanner = new Scanner(System.in); + System.out.println("请输入一个数字:"); + double num = scanner.nextDouble(); + double absNum = Math.abs(num); + System.out.println("绝对值为:" + absNum); + + //最小值和最大值 + int num1 = 5; + int num2 = 10; + int num3 = 3; + + int min = Math.min(num1, Math.min(num2, num3)); + int max = Math.max(num1, Math.max(num2, num3)); + + System.out.println("最小值为:" + min); + System.out.println("最大值为:" + max); + + //四舍五入 + System.out.println("请输入一个浮点数:"); + double num4 = scanner.nextDouble(); + long roundedNum = Math.round(num4); + System.out.println("四舍五入的整数为:" + roundedNum); + + //随机数生成 + System.out.println("请输入一个最大值:"); + int maxValue = scanner.nextInt(); + double randomNum = Math.random(); + System.out.println("生成的随机数为:" + randomNum); + System.out.println("相乘后为" + randomNum * maxValue); + + //计算平均值 + int[] array = {5, 10, 15, 20, 25}; + double sum = 0; + + for (int num5 : array) { + sum += num5; + } + + double average = sum / array.length; + System.out.println("平均值为:" + average); + + } +} diff --git "a/work/com/java/minxi/java_20240516/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/Person.java" "b/work/com/java/minxi/java_20240516/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/Person.java" new file mode 100644 index 0000000000000000000000000000000000000000..e2129c03c027b1a5f5473665c9892ba9f8798900 --- /dev/null +++ "b/work/com/java/minxi/java_20240516/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/Person.java" @@ -0,0 +1,49 @@ +package com.java.minxi.java_20240516.java_2302_郑祺海_2344310215; + +import java.util.Objects; + +public class Person { + //包含 `name` 和 `age` 属性 + private String name; + private int age; + + 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; + } + + // + //重写 `toString` 方法,使其返回一个字符串,包含对象的 `name` 和 `age`。 + @Override + public String toString() { + return "Name: " + name + ", Age: " + age; + } + + //在 `Person` 类中重写 `equals` 方法,使得可以通过 `name` 和 `age` 属性比较两个 `Person` 对象是否相等。 + @Override + public boolean equals(Object obj) { + if (this == obj) return true; + if (obj == null || getClass() != obj.getClass()) return false; + Person person = (Person) obj; + return age == person.age && Objects.equals(name, person.name); + } + + + +} diff --git "a/work/com/java/minxi/java_20240516/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/StringExample.java" "b/work/com/java/minxi/java_20240516/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/StringExample.java" new file mode 100644 index 0000000000000000000000000000000000000000..685bfe6840c837b27d6babb1c6b90313e5c475ec --- /dev/null +++ "b/work/com/java/minxi/java_20240516/java_2302_\351\203\221\347\245\272\346\265\267_2344310215/StringExample.java" @@ -0,0 +1,119 @@ +package com.java.minxi.java_20240516.java_2302_郑祺海_2344310215; + +public class StringExample { + public static void main(String[] args) { + // 1. 字符串连接 + String str1 = "Hello, "; + String str2 = "World!"; + String result1 = str1 + str2; + System.out.println("字符串连接结果:" + result1); + + // 2. 字符串长度 + String testStr = "Hello, World!"; + int length = getStringLength(testStr); + System.out.println("字符串长度:" + length); + + // 3. 字符串分割 + String csvString = "apple,banana,orange"; + String[] words = csvString.split(","); + System.out.println("字符串分割:"); + for (String word : words) { + System.out.println(word); + } + + // 4. 字符串反转 + String trueStr = "Hello, World!"; + String falshStr = reverseString(trueStr); + System.out.println("字符串反转:" + falshStr); + + // 5. 字符串大小写转换 + String mixedStr = "HeLLo, WoRLd!"; + String lowerStr = mixedStr.toLowerCase(); + String upperStr = mixedStr.toUpperCase(); + System.out.println("小写字符串:" + lowerStr); + System.out.println("大写字符串:" + upperStr); + + // 6. 字符串搜索 + String searchStr = "Hello, World!"; + boolean containsStr = searchStr.contains("World"); + System.out.println("是否包含 'World':" + containsStr); + + // 7. 字符串替换 + String originalString = "Hello, World!"; + String replacedString = originalString.replace("World", "Java"); + System.out.println("替换后的字符串:" + replacedString); + + // 8. 字符串修剪 + String oristr = " Hello, World! "; + String trimmedString = oristr.trim(); + System.out.println("修剪后的字符串:" + trimmedString); + + // 9. 字符串比较 + String strA = "hello"; + String strB = "Hello"; + boolean equalsIgnoreCase = strA.equalsIgnoreCase(strB); + System.out.println("忽略大小写是否相等:" + equalsIgnoreCase); + + // 其余实现方法请在下面继续... + + // 10. 子串操作 + String sourceStr = "Hello, World!"; + String subString = getSubstring(sourceStr, 7, 12); + System.out.println("子串:" + subString); + + // 11. 字符串结束符检查 + String checkStr1 = "Hello, World!"; + boolean endsWith1 = checkStr1.endsWith("!"); + System.out.println("是否以 '!' 结尾:" + endsWith1); + + // 12. 字符串开始符检查 + String checkStr2 = "Hello, World!"; + boolean startsWith = checkStr2.startsWith("Hello"); + System.out.println("是否以 'Hello' 开始:" + startsWith); + + // 13. 字符串中字符的出现次数 + String countStr = "Hello, World!"; + char charToCount = 'l'; + int charCount = countCharOccurrences(countStr, charToCount); + System.out.println("字符 'l' 出现次数:" + charCount); + + // 14. 字符串与数字的转换 + String numStr = "123"; + int numInt = Integer.parseInt(numStr); + System.out.println("转换为整数:" + numInt); + + // 15. StringBuilder拼接 + String strConst1 = "Hello, "; + String strConst2 = "World!"; + String strConst3 = "Nice to meet you!"; + StringBuilder sb = new StringBuilder(); + sb.append(strConst1).append(strConst2).append(strConst3); + System.out.println("StringBuilder拼接结果:" + sb.toString()); + } + + // 获取字符串长度 + public static int getStringLength(String str) { + return str.length(); + } + + // 字符串反转 + public static String reverseString(String str) { + return new StringBuilder(str).reverse().toString(); + } + + // 提取子串 + public static String getSubstring(String str, int startIndex, int endIndex) { + return str.substring(startIndex, endIndex); + } + + // 统计字符出现次数 + public static int countCharOccurrences(String str, char ch) { + int count = 0; + for (int i = 0; i < str.length(); i++) { + if (str.charAt(i) == ch) { + count++; + } + } + return count; + } +}