小吴是S大计算机软件学院的大四学生,学的是java,即将从S大毕业的的小吴来秋招的单位实习的第一天,他的师傅老梁给他分配了一个小任务,叫他先练练手
老梁:“小吴啊,先给我写个工具类吧,给你一个list,里面存放String,给我返回一个排序后的list的吧”
小吴心想很easy啊,答道:“好啊,5分钟就可以了”
/**
*
* @param lists 需要排序的list
* @return 返回排序后的list
*/
public static List<String> sortForStr(List<String> lists){
if(null != lists){
if(lists.contains(null))
lists.remove(null);
Collections.sort(lists);
return lists;
}else{
return null;
}
}
老梁上了一个厕所回来后,看看说:"我需要把特定的元素置顶,简单的说就是把指定的元素放入list的第一个!"
小吴心想我记得有个add(int index,Object obj)的方法的,回答道:”好!“
10分钟后
/**
*
* @param lists 需要排序的list
* @param str 排序后需要置顶的元素
* @return 排序后且置顶元素置顶后的list
*/
public static List<String> topElement(List<String> lists,String str){
if(null != lists){
sortForStr(lists);
if(lists.contains(str)){
int index=lists.indexOf(str);
lists.add(0, lists.get(index));
lists.remove(index+1);
}
return lists;
}else{
return null;
}
}
老梁看了看,觉得还不错吧~,又说今天最后一个简单的任务,把list中重复的元素删了再排序吧~
小吴笑着说,我已经写好了~
/**
*
* @param lists 存在重复元素的list
* @return 去重后排序的list
*/
public static List<String> removeSameElementAndSort(List<String> lists){
if(null != lists){
HashSet<String> hs=new HashSet<String>(lists);
lists.clear();
lists.addAll(hs);
sortForStr(lists);
return lists;
}else{
return null;
}
}
老梁说:”不错!只能够看吧,今天你就把collection集合框架好好看看吧,明天讲给我听听~“
以下附全部代码(有错请指正)
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
public class CollectionUtil {
/**
*
* @param lists 需要排序的list
* @return 返回排序后的list
*/
public static List<String> sortForStr(List<String> lists){
if(null != lists){
if(lists.contains(null))
lists.remove(null);
Collections.sort(lists);
return lists;
}else{
return null;
}
}
/**
*
* @param lists 需要排序的list
* @param str 排序后需要置顶的元素
* @return 排序后且置顶元素置顶后的list
*/
public static List<String> topElement(List<String> lists,String str){
if(null != lists){
sortForStr(lists);
if(lists.contains(str)){
int index=lists.indexOf(str);
lists.add(0, lists.get(index));
lists.remove(index+1);
}
return lists;
}else{
return null;
}
}
/**
*
* @param lists 存在重复元素的list
* @return 去重后排序的list
*/
public static List<String> removeSameElementAndSort(List<String> lists){
if(null != lists){
HashSet<String> hs=new HashSet<String>(lists);
lists.clear();
lists.addAll(hs);
sortForStr(lists);
return lists;
}else{
return null;
}
}
}
附:本人为刚刚毕业的新手,javase的基础不牢,多学学多记录记录~有不对的请各位指出,谢谢~