网站论文参考文献,专业的企业网站定制公司,专业网站优化公司,百度收录排名查询在Java中#xff0c;如果你有一个字符串列表#xff0c;并希望确保每个字符串都是唯一的#xff0c;那么可以通过检查重复项并为重复的字符串添加后缀数字来实现。下面是一个示例代码#xff0c;展示了如何操作字符串以确保不重复#xff1a; import java.util.;public cl…在Java中如果你有一个字符串列表并希望确保每个字符串都是唯一的那么可以通过检查重复项并为重复的字符串添加后缀数字来实现。下面是一个示例代码展示了如何操作字符串以确保不重复 import java.util.;public class UniqueStringGenerator {public static void main(String[] args) {ListString inputList Arrays.asList(apple, banana, apple, apple, banana, cherry);ListString uniqueList makeUnique(inputList);System.out.println(uniqueList); // 输出: [apple, banana, apple1, apple2, banana1, cherry]}public static ListString makeUnique(ListString inputList) {ListString uniqueList new ArrayList();MapString, Integer stringCountMap new HashMap();for (String str : inputList) {if (!stringCountMap.containsKey(str)) {stringCountMap.put(str, 0);uniqueList.add(str);} else {int count stringCountMap.get(str) 1;stringCountMap.put(str, count);uniqueList.add(str count);}}return uniqueList;}
}代码解释
1. 输入列表和输出列表的初始化
ListString inputList Arrays.asList(apple, banana, apple, apple, banana, cherry);ListString uniqueList makeUnique(inputList);
2. 生成唯一字符串列表的方法
public static ListString makeUnique(ListString inputList) {ListString uniqueList new ArrayList();MapString, Integer stringCountMap new HashMap();for (String str : inputList) {if (!stringCountMap.containsKey(str)) {stringCountMap.put(str, 0);uniqueList.add(str);} else {int count stringCountMap.get(str) 1;stringCountMap.put(str, count);uniqueList.add(str count);}}return uniqueList;}
3. 详细解释 - 输入列表包含可能重复的字符串。 - 唯一列表用来存储处理后的唯一字符串。 - 字符串计数映射用来记录每个字符串出现的次数。 - 遍历输入列表对于每个字符串检查是否已经在映射中。 - 如果不在映射中将其添加到映射并设置计数为0并添加到唯一列表。 - 如果在映射中增加计数并将计数作为后缀添加到字符串后添加到唯一列表。
输出
上述代码的输出将是一个包含唯一字符串的列表每个重复字符串都附加了一个数字后缀保证其唯一性
[apple, banana, apple1, apple2, banana1, cherry]这种方法可以扩展到更复杂的场景例如处理文件名、用户输入等确保所有字符串都唯一且易于识别。