關於java中的集合如何刪除一個元素。


我們有三種方法可以刪除集合中的元素,下面介紹兩種方法,

一種是傳統的for循環,另一種是使用Iterator迭代器(推薦使用),簡單的介紹如下:

for循環刪除元素:

public class ForRemove<T>
{
    public void forDelete(List<T> list, T obj){  
        
        for(int i = 0;i < list.size(); i++){  
            if (obj == list.get(i))  
            {  
                list.remove(obj);  
            }  
        }  
    }  
    
    //main中調用
    public static void main(String[] args)
    {
        ForRemove<String> re = new ForRemove<>();
        
        List<String> listRemove = new ArrayList<>();
        
        listRemove.add("1");
        
        listRemove.add("2");
        
        listRemove.add("3");
        
        listRemove.add("4");
        
        listRemove.add("5");
        
        re.forDelete(listRemove, "4");
        
        System.out.println(listRemove.toString());
    }
}

輸出的結果是:[1, 2, 3, 5]

iterator迭代器刪除元素:

public class IteratorRemove<T>
{
    public void iteratorDelete(List<T> list, T obj)
    {  
        Iterator<T> it = list.iterator();
        
        while(it.hasNext())
        {  
            T item = it.next();
            
            if (item.equals(obj))
            {  
                it.remove();//刪除當前項
            }  
        }  
    }
    
    public static void main(String[] args)
    {
        IteratorRemove<String> iteratorRemove = new IteratorRemove<>();//實例化
        
        List<String> listRemove = new ArrayList<>();
        
        listRemove.add("1");
        
        listRemove.add("2");
        
        listRemove.add("3");
        
        listRemove.add("4");
        
        listRemove.add("5");
        
        iteratorRemove.iteratorDelete(listRemove, "4");
        
        System.out.println(listRemove.toString());
    }
}
輸出的結果為:[1, 2, 3, 5]


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM