java之增強for迴圈以及幾種刪除集合元素的方式

來源:互聯網
上載者:User

標籤:str   數組   迴圈   刪除   AC   cti   public   異常   dem   

 1 public class Demo1_Foreach { 2  3     /* 4      * 增強for迴圈格式: 5      *     for(元素資料類型   變數  :  數組或者Collection集合){ 6      *         使用變數即可,該變數就是元素 7      *     } 8      * 實質:底層依賴的是迭代器 9      */10     public static void main(String[] args) {11 12         //demo1();13         List<String> l = new ArrayList<>();14         l.add("a");15         l.add("b");16         l.add("b");17         l.add("c");18         19         /*20          * 1. 普通for迴圈刪除元素21          *    注意:索引要減減 ( -- )22          23         for(int i=0; i < l.size(); i++) {24             if ("b".equals(l.get(i))) {25                 //l.remove(i);            //[a, b, c]26                 l.remove(i--);            //[a, c]27             }28         }29         */30         31         /*2.迭代器刪除元素32          * Iterator<String> it = l.iterator();33         while (it.hasNext()) {34             if ("b".equals(it.next())) {35                 //l.remove("b");   //不能用集合的刪除方法,在遍曆的同時刪除元素,否則會報並發修改異常36                 it.remove();37             }38         }*/39         40         /*for(Iterator<String> it2 = l.iterator();it2.hasNext();) {41             if ("b".equals(it2.next())) {42                 //l.remove("b");   //不能用集合的刪除方法,在遍曆的同時刪除元素,否則會報並發修改異常43                 it2.remove();44             }45         }*/46         47         /*3.增強for迴圈方式刪除,此方式無法刪除,因為增強for迴圈底層依賴的是迭代器,利用集合的刪除方法刪除會報並發修改異常48          * for (String string : l) {49             if ("b".equals(string)) {50                 l.remove("b");51             }52         }*/53         System.out.println(l);54     }55 56     public static void demo1() {57         int[] arr = {11, 22, 33};58         for (int i : arr) {59             System.out.println(i);60         }61         62         ArrayList<String> list = new ArrayList<>();63         list.add("a");64         list.add("b");65         list.add("c");66         67         for (String string : list) {68             System.out.println(string);69         }70     }71 72 73 }74 75 ///////////////////////////////////////////////////////////////////////////76 77 /*78      * 1. 概述:定義方法時,不知道該定義幾個參數時可以使用可變參數79      * 2.格式:80      *     修飾符  傳回值類型   方法名(資料類型  ... 變數名)81      *     82      * 3.注意事項:83      *     這個可變參數實質就是一個數組84      *     如果有多個參數,則可變參數必須放到最後一個85      */86     public static void main(String[] args) {87 88         int[] arr = {11, 22, 33, 44};89         //print(arr);90         print(11,33,44);91     }92 93     /*public static void print(int[] arr) {94         System.out.println(arr[0]);95     }*/96     97     public static void print(int... arr) {98         System.out.println(arr[0]);99     }

 

java之增強for迴圈以及幾種刪除集合元素的方式

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.