Java代码宝藏:15个实用代码片段及详解306


作为一名Java程序员,积累一些常用的、高效的代码片段至关重要。这些代码片段不仅能提高开发效率,还能帮助你更好地理解Java的特性和最佳实践。本文将分享15个经过精心挑选的实用Java代码片段,涵盖字符串操作、集合处理、日期时间处理、IO操作等多个方面,并附带详细的注释和解释,希望能帮助你提升编程水平。

1. 反转字符串
public static String reverseString(String str) {
return new StringBuilder(str).reverse().toString();
}

这个片段利用StringBuilder的reverse()方法高效地反转字符串。相比于字符数组操作,它更加简洁易懂。

2. 检查字符串是否为回文
public static boolean isPalindrome(String str) {
String reversed = new StringBuilder(str).reverse().toString();
return (reversed);
}

该片段利用上一段代码的反转功能,忽略大小写地判断字符串是否为回文。

3. 移除字符串中重复字符
public static String removeDuplicateChars(String str) {
return new LinkedHashSet(((""))).stream().collect(());
}

利用LinkedHashSet的特性,保证元素顺序的同时移除重复字符,最后再拼接成字符串。

4. 查找数组中最大值
public static int findMax(int[] arr) {
return (arr).max().orElse(Integer.MIN_VALUE);
}

利用Java 8 的Stream API,简洁地找到数组中的最大值,并处理空数组的情况。

5. 计算两个日期之间的天数差
public static long daysBetween(LocalDate d1, LocalDate d2) {
return (() - ());
}

使用LocalDate和toEpochDay()方法方便地计算两个日期之间的天数差。

6. 格式化日期
public static String formatDate(LocalDate date, String pattern) {
DateTimeFormatter formatter = (pattern);
return (formatter);
}

使用DateTimeFormatter灵活地格式化日期。

7. 读取文件内容
public static String readFile(String filePath) throws IOException {
return ((filePath));
}

Java NIO 提供了便捷的文件读取方式。

8. 写入文件内容
public static void writeFile(String filePath, String content) throws IOException {
((filePath), content);
}

与读取文件类似,NIO 也提供了便捷的文件写入方式。

9. 创建目录
public static void createDirectory(String dirPath) throws IOException {
((dirPath));
}

创建多级目录,如果父目录不存在则会自动创建。

10. 复制文件
public static void copyFile(String source, String destination) throws IOException {
((source), (destination), StandardCopyOption.REPLACE_EXISTING);
}

复制文件,如果目标文件存在则会覆盖。

11. 检查文件是否存在
public static boolean fileExists(String filePath) {
return ((filePath));
}

简单地检查文件是否存在。

12. 将List转换为数组
public static <T> T[] listToArray(List<T> list, T[] arr) {
return (arr);
}

类型安全的List到数组的转换。

13. 将数组转换为List
public static <T> List<T> arrayToList(T[] arr) {
return (arr);
}

类型安全的数组到List的转换。

14. 计算阶乘
public static long factorial(int n) {
if (n < 0) {
throw new IllegalArgumentException("Input must be non-negative.");
}
return n == 0 ? 1 : n * factorial(n - 1);
}

递归实现阶乘计算,并处理负数输入。

15. Fibonacci数列
public static long fibonacci(int n) {
if (n < 0) {
throw new IllegalArgumentException("Input must be non-negative.");
}
if (n <= 1) {
return n;
}
long a = 0, b = 1, temp;
for (int i = 2; i <= n; i++) {
temp = a + b;
a = b;
b = temp;
}
return b;
}

迭代实现Fibonacci数列,并处理负数输入。

这些代码片段只是冰山一角,还有许多其他的实用Java代码片段等待你去发现和学习。希望这篇文章能够帮助你更好地掌握Java编程,提高你的开发效率。

2025-05-25


上一篇:Java数据清洗实战指南:高效处理脏数据的策略与代码示例

下一篇:Java数组穷举算法详解及优化策略