一、用到的方法:
add();----向集合添加元素
contains();-----判断集合中是否包含某个元素,返回值为false
toArray();----将集合转换为数组
get(); -----得到集合中的元素
二、思路:
(1)得到集合中的元素
(2)遍历得到的元素 返回是字符
(3)新建一个Sturbglist集合存放得到的不重复字符
ArrayList<String> resultArrayList = new ArrayList<>()
(4)判断是否重复,contains(),为false不添加到StringList集合中
三、源码:
import java.util.ArrayList; import java.util.Arrays; import java.util.List; /** * Tony 的 java **/ public class Exercise01 { public static void main(String[] args) { //对集合去重 ArrayList<String> words = new ArrayList<>(); words.add("hello"); words.add("world"); // System.out.println(words); // System.out.println(words.getClass()); System.out.println(Arrays.toString(distinct(words))); // Arrays.toString----这个方法是用来将数组转换成String类型输出的 } public static String[] distinct(List<String> list) { //distinct--不同的 //遍历得到的 存放不重复的元素 ArrayList<String> resultArrayList = new ArrayList<>(); //遍历集合的每个元素 for (int i = 0; i < list.size(); i++) { String string = list.get(i); //遍历每个元素中的字符 for (int j = 0; j < string.length(); j++) { //字符转换 为字符串 String c = string.charAt(j) + ""; //判断得到的字符是否存在,如果存在跳出本次循环 if (resultArrayList.contains(c)) { continue; } resultArrayList.add(c); } } //集合转换为数组:toArray String[] strings = resultArrayList.toArray(new String[0]); return strings; } }