Java基础笔记23-集合练习题
- 定义一个集合,实现去重复的功能
- 定义一个数组,数组中存放的是图片的后缀,给一个文件的名字,判断是否是图片
- 定义一个带有数字和字符串的集合,使用迭代器进行迭代,只输出字符串及其长度
代码示例:
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
public class Practice {
public static void main(String[] args) {
String fileName = "dklsfdlkj.png.dsh";
System.out.println("是否是指定格式图片:"+picVerify(fileName));
List list = new ArrayList();
list.add(123);
list.add("abc");
list.add(123);
list.add(456);
list.add("abcd");
list.add(789);
System.out.println("列表去重前:"+list);
List newList = notRepeatMethod(list);
System.out.println("列表去重后:"+newList);
System.out.println("---------");
System.out.println("list中字符元素及长度:");
iMethod(list);
}
/**
* 定义一个数组,数组中存放的是图片的后缀,给一个文件的名字,判断是否是图片
* @param fileName
*/
public static boolean picVerify(String fileName) {
//定义一个数组
String[] str = {".png",".jpg",".gif"};
//获取文件名后缀
int index = fileName.lastIndexOf(".");
//截取后缀
String suffix = fileName.substring(index);
//将数组转换为集合
List list = Arrays.asList(str);
//确认后缀名在集合中
boolean flag = list.contains(suffix);
return flag;
}
// 定义一个集合,实现去重复的功能
public static List notRepeatMethod(List list) {
//定义一个新集合
List newList = new ArrayList();
//遍历老集合
for(int i=0;i<list.size();i++) {
Object obj = list.get(i);
if(!newList.contains(obj)) {
newList.add(obj);
}
}
return newList;
}
//定义一个带有数字和字符串的集合,使用迭代器进行迭代,只输出字符串及其长度
public static void iMethod(List list) {
Iterator it = list.iterator();
//使用迭代器遍历集合
while(it.hasNext()) {
Object obj = it.next();
if(obj instanceof String) {
String str = (String) obj;
System.out.println("元素:"+str +" 长度:"+str.length());
}
}
}
}
输出:
是否是指定格式图片:false
列表去重前:[123, abc, 123, 456, abcd, 789]
列表去重后:[123, abc, 456, abcd, 789]
---------
list中字符元素及长度:
元素:abc 长度:3
元素:abcd 长度:4