package lianxi;
import java.io.File;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Set;
/*获取目录下:"D:\\java\\wokepace\\1day22\\aaa"
* 所有文件的后缀名,计算出共有几种后缀名,并获取每种后缀名含有多少个文件*/
public class houzuiming {
public static void main(String[] args) {
File f = new File("D:\\java\\wokepace\\1day22\\aaa");
HashMap<String, Integer> map = new HashMap<String, Integer>();
ArrayList<String> key= new ArrayList<>();
File[] fs = f.listFiles();
for (File i : fs) {
if(i.isFile()){
String name = i.getName();
int index = name.indexOf(".");
String hz = name.substring(index);
key.add(hz);
System.out.println(hz);
}
else{
System.out.println(i.getName()+":是文件夹");
}
}
System.out.println("--------------------------");
for (String k : key) {
if(!map.containsKey(k)){
map.put(k,1);
}else{
int count = map.get(k);
count++;
map.put(k, count);
}
}
Set<String> keySet = map.keySet();
for (String k: keySet) {
Integer count = map.get(k);
System.out.println(k+"后缀的有"+count+"个文件");
}
}
} |
|