天天看點

黑馬程式員_日記63_fill替換

——- android教育訓練、java教育訓練、期待與您交流! ———-

/*

static void

fill(List

import java.util.*;
public class CollectionsFillDemo
{
    public static void sop(Object obj)
    {
        System.out.println(obj);
    }
    public static void main(String[] args)
    {
        //fillDemo();
        //copyDemo();

        //建立一個集合List
        List<String> list = new ArrayList<String>();

        //添加元素
        list.add("ab");
        list.add("ac");
        list.add("ad");
        list.add("ae");
        list.add("agv");
        list.add("aw");

        //列印原集合
        sop(list);

        //fillDemo2(list,"obj",1,4);//把list集合中1,2,3這三個角标的元素替換為"obj"
        //列印替換後的集合
        //sop(list);
        //Collections.replaceAll(list,"agv","key");//把集合中指定元素替換成關鍵字
        //列印替換後的集合
        //sop(list);
        Collections.reverse(list);//反轉集合
        //列印反轉後的集合
        sop(list);
    }

    //copy示範
    public static void copyDemo()
    {
        //建立一個集合List
        List<String> list = new ArrayList<String>();

        //添加元素
        list.add("ab");
        list.add("ac");
        list.add("ad");
        list.add("ae");

        //列印集合一
        sop("集合一"+list);

        //建立第二個集合
        List<String> list_2 = new ArrayList<String>();

        //集合2添加元素
        list_2.add("a1");
        list_2.add("a0");
        list_2.add("a2");
        list_2.add("a5");
        list_2.add("a4");
        list_2.add("a3");

        Collections.copy(list_2,list);
        sop("集合二"+list_2);
    }

    //fill示範
    public static void fillDemo()
    {
        //建立一個集合List
        List<String> list = new ArrayList<String>();

        //添加元素
        list.add("ab");
        list.add("ac");
        list.add("ad");
        list.add("ae");

        //列印原集合
        sop(list);
        //調用fill方法,替換所有元素為指定元素
        Collections.fill(list,"abc");
        sop(list);  
    }

    /*
    練習。fill方法可以将list集合中所有元素替換成指定元素。
    ,将list集合中部分元素替換成指定元素。
    */
    public static <T> void fillDemo2(List<? super T> list, T obj,int start, int end  )
    {
        /*
        思路分析:因為要操作角标,是以應該用到了for循環,
        将指定角标依次全部替換成指定元素
        */
        for(int i = start; i < end; i++ )
        {
            //移除
            list.remove(i);
            //插入
            list.add(i,obj);
        }
    }
}
           

Fill用之定義元素替換了集合中的所有元素.jpg

黑馬程式員_日記63_fill替換

Fill替換指定角标範圍.jpg

黑馬程式員_日記63_fill替換

繼續閱讀