暂时转换

来源:互联网 发布:java for循环语句 编辑:程序博客网 时间:2024/04/27 14:23
import java.util.ArrayList;import java.util.HashSet;import java.util.List;import java.util.Set;/** * 主要是两个List之间互相交换 * @author Cloudy2012 */public class ChangeList{ String[] selected=null; Set<String> sets =null; List<Long> viewList=null;public static void main(String[] args){new ChangeList().outReslut();}public void outReslut(){//用例://viewList中为10 11 12 13viewList = getViewLists();System.out.print("viewList:");for(Long l:viewList){System.out.print(l+",");}System.out.println();sets=getSets();System.out.println("sets:"+sets);selected =new String[]{"1","3"};//测试新增 select 1 3   那么view 1 3 10 11 12 13   viewList:67810,11,12,13, sets:7,6,8, selectlist:1,3, VVVVV正确System.out.println(getViewList(selected,sets,viewList));}private  Set<String> getSets(){Set<String> set =new HashSet<String>();for(int i=6;i<11;i++){set.add(String.valueOf(i));}return set;}private  List<Long> getViewLists(){List<Long> ll=new ArrayList<Long>();for(int i =5;i<11;i++){ll.add((long) i);}return ll;}public  List<Long> getViewList(String [] strbox,Set<String>sets,List<Long> viewlst){List<Long> viewllist=new ArrayList<Long>();viewllist=viewlst;//将数组转换List<Long> selectlist = new ArrayList<Long>();//有选择项if(null!=strbox&&strbox.length>0){for(int i=0;i<strbox.length;i++){selectlist.add(Long.valueOf(strbox[i].trim()));}}//将sets集合转换成listList<Long> groupList = new ArrayList<Long>();for(String moid:sets){groupList.add(Long.valueOf(moid.trim()));}//如果selectlist中有数据不属于groupList,那就将不属于新增到viewlst中for(Long selectId:selectlist){if(!groupList.contains(selectId)){viewllist.add(selectId);}}//如果groupList中有数据不熟于selectList,那就将不属于的从viewlst中剔除for(Long moid:groupList){if(!selectlist.contains(moid)){if(viewllist.contains(moid)){viewllist.remove(moid);}}}return viewllist;}}


原创粉丝点击