JDK 13中的JEP 355文本块

JDK 13已于2019年9月17日上线GA, 此处列出了重要的新功能。 新功能之一是“文本块”。 这样可以轻松地编写多行字符串,而不必在拆分成不同的行时进行串联。

让我们快速了解创建多行字符串的不同方法:

String aBlock = """
SELECT id, first_name, last_name, dob
FROM person
WHERE id = ?
""";String aIndentedBlock = """SELECT id, first_name, last_name, dobFROM personWHERE id = ?
""";String anotherBlock = """
SELECT id, first_name, last_name, dob
FROM person
WHERE id = ?""";System.out.print(aBlock);
System.out.print(aIndentedBlock);
System.out.print(anotherBlock);
System.out.println("This comes in the same line");

这些是编写多行字符串的一些无效方法:

//        String thisIsInvalid = """This is invalid""";
//        String thisIsALsoInvalid = """THis is also invalid
//        """;

文本不能在块的开头引号(即“”””)之后立即开始,而是必须在下一行开始。

我们可以在多行字符串中包含“,”:

System.out.println("""Block containing "" ' '""");

块引号的结尾可以与换行符的文本结尾在同一行:

String thisIsValid = """
This is valid""";

完整的代码可以在这里找到。

翻译自: https://www.javacodegeeks.com/2019/10/jep-355-text-blocks-in-jdk-13.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/341024.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java8 默认方法_默认方法:Java 8的无名英雄

java8 默认方法几周前,我写了一个博客,说开发人员学习新语言是因为它们很酷。 我仍然坚持这个主张,因为关于Java 8的事情真的很酷。 尽管毫无疑问,该节目的明星是添加了Lambdas和将函数提升为一等变量,但我目前最喜欢的…

两个常见的并发错误

作为Baeldung的编辑,我很高兴与一位作者一起撰写有关Java通用并发陷阱的文章。 这是一本不错的书,但是假设开发人员具有一定的能力。 我已经看到了几件即时并发失败的事情。 它们很容易添加到代码中,并保证为您提供奇怪的结果。 开发人员仍会…

kotlin自定义View出现 java.lang.ClassNotFoundException

问题1:找不到所引用的自定义View Didn’t find class “dxf.example.dxf.customviewdemo.MyTextView” on path: DexPathList 原因:build.gradle中 应用插件 解决:添加 apply plugin: ‘kotlin-android’ 问题2: java.lang.Cl…

javafx swing_JavaFX技巧9:请勿混用Swing / JavaFX

javafx swingJavaFX团队非常努力地说服我们,因为可以将Swing内容嵌入JavaFX UI中,反之亦然,因此从Swing迁移到JavaFX很容易。 我必须承认,我从来没有尝试过,但是根据我从客户那里得到的反馈,我只能建议不要…

kotlin-unresolved reference daclaredFunctions

问题:如题 原因: 默认编译时不导入kotlin-reflect.jar包导致,所以在该包中的默认不能使用 解决 需额外在dependencies中添加 kotlin-reflect的编译, compile “org.jetbrains.kotlin:kotlin-reflect:$kotlin-version”

AWS Loft的数据库周

这是我的笔记: https://databaseweekoctober2019sf.splashthat.com AWS上的数据库:正确工作的正确工具 在许多此类谈话中,我并没有做过深刻的记录。 我正在关注重点。 PostgreSQL排在MySQL之后。 AWS上8种类型的数据库: 关系…

MockWebServer[45678] connection from null failed: java.net.SocketException

MockWebServer使用中的异常 MockWebServer: MockWebServer[45678] connection from null failed: java.net.SocketException: sendto failed: EBADF (Bad file number) java.io.IOException: unexpected end of stream on Connection Caused by: java.io.EOFException: \n n…

ExternalDocumentationLinkImpl(url=https://developer.android.com/reference/, packageListUrl=https://d

dokka 问题 java.lang.RuntimeException: Exception while loading package-list from ExternalDocumentationLinkImpl(urlhttps://developer.android.com/reference/, packageListUrlhttps://developer.android.com/reference/package-list) 原因 使用了下面这个任务定义…

IntellijIDEA插件编写-删除/插入/替换文档内容

错误 ERROR - plication.impl.ApplicationImpl - Assertion failed: Write2018-03-24 01:57:49,835 [ 138880] ERROR - plication.impl.ApplicationImpl - Assertion failed: Write access is allowed inside write-action only (see com.intellij.openapi.application.Appli…

jaxb_JAXB –新手的观点,第1部分

jaxb我知道你们中的很多人已经在想什么,所以让我们摆脱这个问题:“ JAXB? 如XML? 来吧,所有很棒的孩子都在使用JSON。” 关于XML与JSON的辩论以及许多促成它的论据都得到了很好的记录。 我不会花很多时间在这里重新整…

Log4j Bug –减慢您的应用程序

最近,我们正在对流行的SaaS应用程序进行故障排除。 该应用程序间歇性地减慢了速度。 要从问题中恢复,必须重新启动应用程序。 在高流量期间,此应用有时会变慢; 有时在交通繁忙时也是如此。 没有凝聚力模式。 这种应用程序变慢并重…

androidstudio --debug 出现 source code not match bytecode

问题 如标题 原因 编译api版本与运行app的模拟器api版本不一致 解决 换成API版本一致的模拟器运行app即可

android monitor突然不能显示

问题 如题 原因 不清楚。。。。 解决 方式一-有副作用(原因不明)-debug可能会一直 wait attach,不能进入调试模式 先将Android NDK support plugin禁用(重启androidstudio)右击android monitor,选择remove from …

jvm虚拟机 基于栈_守护基于JVM的应用程序

jvm虚拟机 基于栈部署体系结构设计是任何定制服务器端应用程序开发项目的重要组成部分。 由于其重要性,部署架构设计应尽早开始,并与其他开发活动一起进行。 部署体系结构设计的复杂性取决于许多方面,包括所提供服务的可伸缩性和可用性目标&a…

ListView中让TextView中的文字进行单独滚动

TextView不能在ListeView中单独的滚动原因 默认ListView将会拦截MOVE事件向下传递 参见源码 case MotionEvent.ACTION_MOVE: {switch (mTouchMode) {case TOUCH_MODE_DOWN:int pointerIndex ev.findPointerIndex(mActivePointerId);if (pointerIndex -1) {pointerIndex 0;…

JPA @Embeddable和@Embedded

介绍: 作为一个面向对象的开发人员,我们希望避免使用带有大量不相关字段的大型类。 因此,我们可能经常感到有必要使用多个对象来表示JPA实体。 在本快速教程中,我们将学习如何使用JPA或Hibernate中的Embedded和Embeddable注释来实…

android monitor不能查看/data目录

问题 在android 7.0虚拟机上不能查看/data目录 解决 1. 修改目录权限 开始->cmd->adb shell->chmod -R 777 /data 2. root虚拟机 先执行 adb root,再执行 adb remount 出现remount succeeded表示可以了

Sqlite error- INSERT failed: datatype mismatch

问题 sqlite3 使用.import命令导入输入出现error-INSERT failed: datatype mismatch 原因 文件字段的默认分隔符为“|”,而从excel转换的.csv文件默认为逗号,所以导致文件解析出错,进而 “数据类型不匹配” 解决 在.import命令前修改分隔…

反射-获取java私有内部类反射类型、私有字段

获取JAVA私有内部类反射类型 方式一 Class.forName(“外部类完整路径$内部私有类类名”); 方式二 通过获取对应私有内部类的字段而获取 完整的类名 Class.forName(field.getType().getName()) 获取JAVA私有字段 Class.forName(“类完整路径”).getDelcaredField(“字段名…

javafx透明边框_JavaFX技巧6:使用透明颜色

javafx透明边框为用户界面元素选择正确的颜色始终是一个很大的挑战,但是当您开发可重用的框架控件时,开发人员就无法控制使用它们的应用程序的外观和感觉,这甚至更具挑战性。 尽管您可能总是将元素添加到默认的灰色背景之上,但是嵌…