背景
截止目前,jdk最新版本为17,自jdk9之后开发了很多新特性!!!
看完这些特性,我在想为啥不直接用scala???
特性
- JShell
jdk9之后出现的一款交互式工具,一般这玩意都是用于新手培训的。真巧,scala也有
scala:
java:
- 文字块
例如以下这段字符串在jdk8中的展现形式如下:
String stringBlock = "<!DOCTYPE html>\n" + "<html>\n" + " <body>\n" + " <h1>\"Hello World!\"</h1>\n" + " </body>\n" + "</html>\n";
那么像这种字符串就可以用字符块去表示
scala:
val stringBlock = """ |<!DOCTYPE html> |<html> | <body> | <h1>"Hello World!"</h1> | </body> |</html> |""".stripMargin
jdk17:
String textBlock = """ <!DOCTYPE html> <html> <body> <h1>"Hello World!"</h1> </body> </html> """;
上面代码输出结果都一样,并且都排版对齐。
jdk17在处理文字块格式化时,会静默的对齐每行的文本,然后删除最长前后缀缩进。这块如果对jdk17处理文字块流程不了解的情况下,可能会存在很多坑,导致原本应该保留的前后缀缩进丢失。这块设计,感觉不如scala。
未完待续
标签:scala,JDK17,特性,jdk17,World,Hello From: https://www.cnblogs.com/zhouwenyang/p/16972226.html