Java 8 新特性详解及应用示例
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
public class Java8FeaturesExample {
public static void main(String[] args) {
// 使用Lambda表达式遍历列表
List<String> items = Arrays.asList("Apple", "Banana", "Cherry");
items.forEach(item -> System.out.println(item));
// 使用Stream API进行过滤和映射
List<String> filteredAndMapped = items.stream()
.filter(item -> item.startsWith("A"))
.map(String::toUpperCase)
.collect(Collectors.toList());
// 使用Date/Time API处理日期
java.time.LocalDate today = java.time.LocalDate.now();
System.out.println("Today's date: " + today);
// 使用Optional类避免空指针异常
java.util.Optional<String> optionalValue = java.util.Optional.of("Hello");
String value = optionalValue.orElse("Default");
// 使用Base64编解码
String text = "Hello, World!";
String encoded = java.util.Base64.getEncoder().encodeToString(text.getBytes());
byte[] decoded = java.util.Base64.getDecoder().decode(encoded);
System.out.println("Original text: " + text);
System.out.println("Encoded text: " + encoded);
System.out.println("Decoded text: " + new String(decoded));
}
}
这段代码展示了Java 8的几个主要新特性:Lambda表达式、Stream API、Date/Time API、Optional 类、Base64 编解码等。每一特性都通过简短的代码示例来说明其用法。
评论已关闭