Java 多行字符串
我们旨在探索适用于 Java 多行字符串的不同方法。我们还将看到哪种方法适合字符串数组。
Java 多行字符串的各种方法
我们有不同的方法来实现在 java 中编写多行字符串的目标。所有这些都在下面列出,你可以根据你的项目需求使用它们中的任何一个。
-
使用文本块(三个双引号
"""
)。 -
使用
+
号。 -
使用
getProperty()
和concat()
方法。 -
使用 String 类的
format()
方法。 -
使用 String 类的
join()
方法。 -
对字符串数组使用
StringBuilder()
。
在 Java 中对多行字符串使用 Text Blocks
示例代码:
public class MainClass {
public static void main(String args[]) {
String str = """
This is line one.
This is line two.
This is line three.
This is line four.
This is line five.
""";
System.out.println(str);
}
}
输出:
This is line one.
This is line two.
This is line three.
This is line four.
This is line five.
Java 15 带来了一种使用 Text Blocks
编写多行字符串的新方法,如果启用了预览功能,我们也可以在 Java 13 和 14 中使用它。使用 Text Blocks
的主要优点是我们不需要指定转义序列和连接运算符。
它还读取空格并将它们添加到输出中。你可能会发现在插入代码块时使用 Text Blocks
很有用,因为它通过读取空格来缩进标签。
示例代码:
public class MainClass {
public static void main(String args[]) {
String str = """
<html>
<head>
<title> Learning Java Multiline Strings </title>
</head>
<body>
<h1> Java Multiline String </h1>
</body>
</html>
""";
System.out.println(str);
}
}
输出:
<html>
<head>
<title> Learning Java Multiline Strings </title>
</head>
<body>
<h1> Java Multiline String </h1>
</body>
</html>
在 Java 中使用 +
表示多行字符串
示例代码:
public class MainClass {
public static void main(String args[]) {
String str = "This is line one. \n" +
"This is line two. \n" +
"This is line three. \n" +
"This is line four. \n" +
"This is line five. \n";
System.out.println(str);
}
}
输出:
This is line one.
This is line two.
This is line three.
This is line four.
This is line five.
我们编写多个字符串(每行一个字符串)并用 +
符号连接它们。在关闭每个字符串之前,我们还使用 \n
指定一个新行。
如果我们在多行上键入字符串但忘记写\n
(用于新行),输出将如下所示。
输出:
This is line one.This is line two.This is line three.This is line four.This is line five.
在 Java 中对多行字符串使用 getProperty()
和 concat()
函数
示例代码:
public class MainClass {
public static void main(String args[]) {
String newLine = System.getProperty("line.separator");
String str = "This is line one."
.concat(newLine)
.concat("This is line two.")
.concat(newLine)
.concat("This is line three.")
.concat(newLine)
.concat("This is line four.")
.concat(newLine)
.concat("This is line five.");
System.out.println(str);
}
}
输出:
This is line one.
This is line two.
This is line three.
This is line four.
This is line five.
我们可以使用 java.lang.System
类的方法 getProperty()
来获取 Java 编程中的行分隔符。getProperty()
方法获取属性的键并返回系统属性,由给定键表示(作为参数传递)。
此外,我们使用 concat()
方法将一个字符串附加到另一个字符串的末尾。在这里,它将新行与第一个字符串连接起来,然后将第二个字符串与新行连接起来,依此类推。
在 Java 中使用 String
类的 format()
方法处理多行字符串
示例代码:
public class MainClass {
public static void main(String args[]) {
String str = String.format("%s\n%s\n%s\n%s\n%s\n",
"This is line one.",
"This is line two.",
"This is line three.",
"This is line four.",
"This is line five.");
System.out.println(str);
}
}
输出:
This is line one.
This is line two.
This is line three.
This is line four.
This is line five.
在这种情况下,我们使用 format()
方法来格式化指定的字符串。虽然它工作得很好,但我们不推荐这个功能,因为它很难管理和保持%s
和\n
的计数。
在 Java 中使用 String
类的 join()
方法处理多行字符串
示例代码:
public class MainClass {
public static void main(String args[]) {
String str = String.join("\n",
"This is line one.",
"This is line two.",
"This is line three.",
"This is line four.",
"This is line five.");
System.out.println(str);
}
}
输出:
This is line one.
This is line two.
This is line three.
This is line four.
This is line five.
join()
方法似乎比 format()
方法更干净。join()
方法使用给定的分隔符连接给定的字符串。
我们使用 \n
作为本教程的分隔符。你可以使用逗号、句号或其他任何你想要的东西。
使用 StringBuilder
类的 append()
方法用于 Java 中的多行字符串
示例代码:
public class MainClass {
public static void main(String args[]) {
String newLine = System.getProperty("line.separator");
StringBuilder string = new StringBuilder();
String array[] = {
"This is line one.",
"This is line two.",
"This is line three.",
"This is line four.",
"This is line five."
};
for(int i=0 ; i < array.length ; i++){
string.append(array[i]);
string.append(newLine);
}
System.out.println(string.toString());
}
}
输出:
This is line one.
This is line two.
This is line three.
This is line four.
This is line five.
如果我们使用字符串数组,StringBuilder
类非常有用。它用于可修改(可变)的字符串。
然后,我们使用 append()
方法来追加驻留在数组中的字符串。最后,我们使用将任何对象转换为字符串的 toString()
方法在屏幕上打印字符串。
相关文章
在 Java 中获取文件大小
发布时间:2023/05/01 浏览次数:139 分类:Java
-
Java 提供了不同的方法来获取文件的字节大小。 本教程演示了在 Java 中获取文件大小的不同方法。使用 Java IO 的文件类获取文件大小 Java IO 包的 File 类提供了以字节为单位获取文件大小的功能。
Java 中的文件分隔符
发布时间:2023/05/01 浏览次数:108 分类:Java
-
本篇文章介绍了 Java 中的文件分隔符。Java 中的文件分隔符 文件分隔符是用来分隔目录的字符; 例如,Unix 使用 /,Windows 使用 \ 作为文件分隔符。
Java 中的文件过滤器
发布时间:2023/05/01 浏览次数:193 分类:Java
-
本篇文章介绍如何在 Java 中使用 FileFilter。FileFilter 用于过滤具有特定扩展名的文件。 Java内置包IO和Apache Commons IO为FileFilter提供了类和接口来进行文件过滤操作。
Java 获取 ISO 8601 格式的当前时间戳
发布时间:2023/05/01 浏览次数:132 分类:Java
-
本篇文章介绍了 ISO 8601 日期格式、其重要性及其在 Java 中的使用。 它还列出了一些优点来强调为什么应该使用 ISO 格式来表示日期。
在 Java 中获取数组的子集
发布时间:2023/05/01 浏览次数:142 分类:Java
-
本篇文章介绍了几种在 Java 中获取数组子集的方法。使用 Arrays.copyOf() 方法获取数组的子集 使用 Arrays.copyOfRange() 方法获取数组的子集
用 Java 填充二维数组
发布时间:2023/05/01 浏览次数:110 分类:Java
-
二维数组是基于表结构的,即行和列,填充二维数组不能通过简单的添加到数组操作来完成。 本篇文章介绍如何在 Java 中填充二维数组。
计算 Java 数组中的重复元素
发布时间:2023/05/01 浏览次数:202 分类:Java
-
本篇文章介绍Java计算数组中重复元素的方法。计算 Java 数组中的重复元素。我们可以创建一个程序来计算数组中的重复元素。 该数组可以是未排序的,也可以是已排序的。
Java 中 List 和 Arraylist 的区别
发布时间:2023/05/01 浏览次数:90 分类:Java
-
表示为单个单元的一组单个对象称为集合。 在 Java 中,Collection 是一个具有多个已定义接口和类的框架,用于将一组对象表示为一个单元。 它允许我们操纵