71. 简化路径
我又用的笨方法哇库哇库
题目:



题解:
java
class Solution {
public String simplifyPath(String path) {
//用stream进行切割筛选
String[] s = Arrays.stream(path.split("/+"))
.filter(str -> !str.isEmpty())
.toArray(String[]::new);
List<String> list = new ArrayList<>();
//进行遍历所有层文件
for(String ss:s) {
//初始化flag=0
//如果所有字符都是.那么直接,并且.的个数是2,将flag=2
int flag=0;
int len=ss.length();
int l = 0;
for(int i=0;i<ss.length();i++) {
if(ss.charAt(i)=='.') {
l++;
}
}
if(l==len) {
if(l==2){
flag=2;
if(list.size()>0)
list.remove(list.size()-1);
}
//如果是1
else if(l==1) {
flag = 1;
}
}
if(flag == 0) {
//进行加入集合
list.add(ss);
}
}
if(list.size()==0) {
return "/";
}
StringBuilder result = new StringBuilder();
for(int i=0;i<list.size();i++) {
result.append("/"+list.get(i));
}
return result.toString();
}
}