Java程序:去除给定句子中的所有重复单词
在这篇文章中,我们将学习如何使用Java去除给定句子中的重复单词。第一种方法使用Java流来去除重复项,并使用distinct()和Collectors.joining()方法将单词重新组合成句子。第二种方法使用Set自动过滤重复单词,并使用StringJoiner将单词重新组合成句子。两种方法都将得到一个只包含唯一单词的句子。
不同的方法
以下是去除给定句子中所有重复单词的不同方法:
使用Java流
以下是使用Java流从给定句子中去除所有重复单词的步骤:
- 首先,我们将从java.util包导入Arrays,以及从java.util.stream包导入Collectors。
- 之后,我们将定义一个包含重复单词的字符串句子。
- 我们将使用split()方法将句子分成单个单词。
- 之后我们将应用distinct()过滤掉重复的单词。
- 使用joining()方法将不同的单词重新组合成句子。
- 打印最终没有重复单词的句子。
示例
以下是使用Java流从给定句子中去除所有重复单词的Java程序:
import java.util.Arrays;
import java.util.stream.Collectors;
public class Demo{
public static void main(String[] args){
String my_str = "This is a is sample a sample only.";
my_str = Arrays.stream(my_str.split("\s+")).distinct().collect(Collectors.joining(" "));
System.out.println(my_str);
}
}
输出
This is a sample only.
使用Set
以下是使用Set从给定句子中去除所有重复单词的步骤:
- 首先,我们将导入所需的类,例如HashSet和StringJoiner,它们都位于java.util包中。
- 之后,我们将定义一个包含重复单词的句子。
- 我们将使用split()方法将句子分成单词,并将每个单词存储在Set中以自动删除重复项。
- 我们将使用StringJoiner将不同的单词重新组合成句子。
- 最后,打印最终没有重复单词的句子。
示例
以下是使用Set从给定句子中去除所有重复单词的Java程序:
import java.util.HashSet;
import java.util.Set;
import java.util.StringJoiner;
public class RemoveDuplicates {
public static void main(String[] args) {
String my_str = "This is a is sample a sample only.";
String[] words = my_str.split("\s+");
Set uniqueWords = new HashSet<>();
StringJoiner result = new StringJoiner(" ");
for (String word : words) {
if (uniqueWords.add(word)) {
result.add(word);
}
}
System.out.println(result.toString());
}
}
输出
This is a sample only.
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP