У мінулым уроку мы падзялілі два спосабу пераўтварэнні ArrayList у масіў з прыкладам . Тут мы дзелімся тры розных спосабу пераўтварэння масіва ў ArrayList. У асноўным мы пераўтварэнне масіва радкоў ArrayList тыпу String.
String array[] to ArrayList<String>
Метад 1: Пераўтварэнне з выкарыстаннем Arrays.asList ()
сінтаксіс:
ArrayList<T> arraylist= new ArrayList<T>(Arrays.asList(arrayname));
прыклад:
У гэтым прыкладзе мы выкарыстоўваем Arrays.asList метад для пераўтварэння Array
ў ArrayList
.
імпарт java.util. *; грамадскі клас ArrayToArrayList { дзяржаўнай статычнай сілы асноўных (String [] Арг) { / * Масіў Дэкларацыя і ініцыялізацыя * / Радок citynames [] = { "Агра", "Майсур", "Чандыгарх", "Бхопал"}; / * Масіў для ArrayList пераўтварэнні * / ArrayList <String> CityList = новы ArrayList <String> (Arrays.asList (citynames)); / * Даданне новых элементаў ператворанага спісу * / citylist.add ( "New City2"); citylist.add ( "New City3"); / * Канчатковае адлюстраванне кантэнту ArrayList, выкарыстоўваючы для * / для (String вул: CityList) { System.out.println (вул); } } }
выхад:
Агра Майсур Чандыгарх Бхопал новы City2 новы City3
Метад 2: метад Collections.addAll
Collections.addAll метад ўсе элементы масіва да паказанай калекцыі. Гэта як Collections.addAll
метад выклікаецца. Ён робіць тое ж самае , як Arrays.asList
метад , аднак ён значна хутчэй , чым гэта так прадукцыйнасць мудрым гэта лепшы спосаб , каб атрымаць масіў пераўтворыцца ў ArrayList
.
String array[]={new Item(1), new Item(2), new Item(3), new Item(4)};
ArrayList<T> arraylist = new ArrayList<T>();
Collections.addAll(arraylist, array);
АБО
Collections.addAll(arraylist, new Item(1), new Item(2), new Item(3), new Item(4));
прыклад
імпарт java.util. *; грамадскі клас Example2 { дзяржаўнай статычнай сілы асноўных (String [] Арг) { / * Масіў Дэкларацыя і ініцыялізацыя * / Радок масіва [] = { "Прывітанне", "Прывітанне", "Прывітанне", "Bye"}; / * ArrayList дэкларацыя * / ArrayList <String> ArrayList = новы ArrayList <String> (); / * Пераўтварэнне * / Collections.addAll (ArrayList, масіў); / * Даданне новых элементаў ператворанага спісу * / arraylist.add ( "string1"); arraylist.add ( "STRING2"); / * Адлюстраванне спісу масіва * / для (String вул: ArrayList) { System.out.println (вул); } } }
выхад
прывітанне добры дзень здор`ово да пабачэння String1 String2
Спосаб 3: Ручной спосаб рабіць рэчы
Мы можам таксама дадаць ўвесь элемент масіва значэння спісу масіва ўручную. Ніжэй прыклад паказвае логіку ручнога пераўтварэнні.
пакет yupoos.ru; імпарт java.util. *; грамадскі клас падрабязна { дзяржаўнай статычнай сілы асноўных (String [] Арг) { / * ArrayList дэкларацыя * / ArrayList <String> ArrayList = новы ArrayList <String> (); / * Ініцыялізаваць масіў * / Радок масіва [] = { "Текст1", "Текст2", "Text3", "Text4"};/*array.length вяртае бягучы лік * Элементы, прысутныя ў масіве * / для (INT I = 0; я <array.length; я ++) { / * Мы дадаем элемент кожнага масіва ў ArrayList * / arraylist.add (масіў [I]); } / * Змест ArrayList * / для (String вул: ArrayList) { System.out.println (вул); } } }
выхад:
Текст1 Text2 Text3 Text4
У спосабе 2,
мы не можам выкарыстаць гэты метад для пераўтварэння масіва ArrayList:
arraylist.addAll (масіў);
як мы выкарыстоўвалі яго раней для спісу:
arraylist.addAll (спіс);
Добры дзень,
Спосаб пераўтварыць масіў у ArrayList з дапамогай Arrays.asList () працуе добра для любога масіва радкоў, але не з масівамі тыпу Integer.
Калі ласка, дапамажыце.
дзякуй
Калі вы выкарыстоўваеце масіў як «ИНТ [] OBJ = новы Int [х];", то ён не будзе працаваць, таму што спіс масіва можа быць створаны для класа Integer ня ИНТ класа, так ён вяртае памылку неадпаведнасці тыпаў. таму прымаць масіў у выглядзе цэлага ліку [] OBJ = новы Цэлае [х];