1、record快速定义类
@Test
public void testRecord() {
record qiu(int start, int end) {
int sum() {
return qiu.this.start + qiu.this.end;
}
}
qiu q1 = new qiu(1, 2);
System.out.println("q1 = " + q1);
qiu q2 = new qiu(3, 4);
System.out.println("q2 = " + q2);
System.out.println(q1.equals(q2));
System.out.println("q1.sum() = " + q1.sum());
System.out.println("q2.sum() = " + q2.sum());
}
2、字符串的新方法
@SneakyThrows
@Test
public void testNewStringMethod() {
String str1 = "";
System.out.println(str1.isBlank());
System.out.println(str1.isEmpty());
str1 = " ";
System.out.println(str1.isBlank());
System.out.println(str1.isEmpty());
str1 = "\r";
System.out.println(str1.isBlank());
System.out.println(str1.isEmpty());
str1 = "\r\n";
System.out.println(str1.isBlank());
System.out.println(str1.isEmpty());
System.out.println("============================================================");
String str2 = "hello qiu \r\n qiu 我的最爱 JDK17 \n\r!\r";
Stream<String> stream = str2.lines();
stream.forEach(System.out::println);
System.out.println("============================================================");
String strip = str2.strip();
System.out.println("strip = " + strip);
System.out.println("str2.stripTrailing() = " + str2.stripTrailing());
System.out.println("str2.stripIndent() = " + str2.stripIndent());
System.out.println("str2.stripLeading() = " + str2.stripLeading());
System.out.println("============================================================");
String str3 = "qiu";
String repeat = str3.repeat(3);
System.out.println("repeat = " + repeat);
System.out.println("============================================================");
String path = "F:\\a.txt";
Path of = Path.of(path);
String string = Files.readString(of);
System.out.println("readString = " + string);
List<String> asList = Arrays.asList("1", "2", "3", "4", "5");
Files.write(Paths.get("F:\\a.txt"), asList, StandardCharsets.UTF_8, StandardOpenOption.APPEND);
Path writeString = Files.writeString(of, "writeString", StandardOpenOption.APPEND);
System.out.println("writeString = " + writeString);
System.out.println("============================================================");
String path3 = "F:\\a.txt";
System.out.println(path3.indent(2));
}
3、switch优雅的写法
String result = "";
int caseNum = 4;
switch (caseNum){
case 1 :
result = "zs";
break;
case 2 :
result = "ls";
break;
case 3 :
result = "ww";
break;
default:
result = "qiuqiu";
}
System.out.println("result = " + result);
result = switch (caseNum) {
case 1 -> "张三";
case 2 -> "李四";
case 3 -> "王五";
default -> "秋秋";
};
System.out.println("result = " + result);
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构