Подтвердить что ты не робот

Как использовать список массивов?

Мне нужно знать, храню ли я свои данные в ArrayList, и мне нужно получить значение, которое я сохранил в нем

Например: если у меня есть список массивов, подобный этому

      ArrayList A = new ArrayList();
      A = {"Soad", "mahran"};

и я хочу получить каждый элемент String, как я могу это сделать?

Я пытался сделать это, как это

package arraylist;

import java.util.ArrayList;

public class Main {

        public static void main(String[] args) {
        ArrayList S = new ArrayList();

        String A = "soad ";
        S.add(A);
        S.add("A");
        String F = S.toString();
        System.out.println(F);
        String [] W = F.split(",");
        for(int i=0 ; i<W.length ; i++) {
           System.out.println(W[i]);
        }
    }
}
4b9b3361

Ответ 1

В следующем фрагменте приведен пример, показывающий, как получить элемент из List по указанному индексу, а также как использовать расширенный для каждого цикла цикл для итерации по всем элементам:

    import java.util.*;

    //...

    List<String> list = new ArrayList<String>();
    list.add("Hello!");
    list.add("How are you?");

    System.out.println(list.get(0)); // prints "Hello!"

    for (String s : list) {
        System.out.println(s);
    } // prints "Hello!", "How are you?"

Обратите внимание на следующее:

  • Типичные List<String> и ArrayList<String> типы используются вместо raw ArrayList.
  • Переменные имена начинаются с строчных букв
  • List объявляется как List<String>, то есть тип интерфейса вместо типа реализации ArrayList<String>.

Ссылки

API:

Не использовать необработанные типы

  • JLS 4.8 Необработанные типы

    Использование типов raw допускается только как уступка совместимости устаревшего кода. Использование необработанных типов в коде, написанном после введения родословности в язык программирования Java, настоятельно не рекомендуется. Возможно, что будущие версии языка программирования Java будут запрещать использование необработанных типов.

  • Эффективное Java 2nd Edition: Пункт 23: Не используйте необработанные типы в новом коде

    Если вы используете необработанные типы, вы теряете все преимущества безопасности и выразительности дженериков.

Предпочитает интерфейсы для классов реализации в объявлениях типов

  • Эффективное Java 2nd Edition: пункт 52: обратитесь к объектам по их интерфейсам

    [...] вы должны использовать использование интерфейсов, а не классов для ссылки на объекты. Если существуют соответствующие типы интерфейсов, все параметры, возвращаемые значения, переменные и поля должны быть объявлены с использованием типов интерфейсов.

Соглашения об именах

Переменные. За исключением переменных, все константы экземпляра, класса и класса находятся в смешанном случае с строчной первой буквой.

Ответ 2

A List является упорядоченным Collection элементов. Вы можете добавить их с помощью метода add и получить их с помощью метода get (int index). Вы также можете перебирать список, удалять элементы и т.д. Вот несколько основных примеров использования списка:

List<String> names = new ArrayList<String>(3); // 3 because we expect the list 
    // to have 3 entries.  If we didn't know how many entries we expected, we
    // could leave this empty or use a LinkedList instead
names.add("Alice");
names.add("Bob");
names.add("Charlie");
System.out.println(names.get(2)); // prints "Charlie"
System.out.println(names); // prints the whole list
for (String name: names) {
    System.out.println(name);  // prints the names in turn.
}

Ответ 3

Вы можете либо получить свои строки по индексу (System.out.println(S.get(0));), либо выполнить итерацию через него:

for (String s : S) {
  System.out.println(s);
}

Для других способов перебора списка (и их последствий) см. традиционный для цикла итератора в Java.

Дополнительно:

  • вы не должны использовать имена переменных, начиная с прописных букв
  • вам следует параметризовать список массивов: ArrayList<String> list = new ArrayList<String>();
  • вам следует ознакомиться с обширной документацией API Java (aka Javadoc), например. Java 5, Java 6

Ответ 4

Это должно сделать трюк:

String elem = (String)S.get(0);

Вернет первый элемент массива.

или

for(int i=0 ; i<S.size() ; i++){
     System.out.println(S.get(i));
}

Ответ 5

Если вы используете Java 1.5 или выше, вы можете использовать:

List<String> S = new ArrayList<String>();
s.add("My text");

for (String item : S) {
  System.out.println(item);
}

Ответ 6

Прежде всего, вы должны прочитать сборник framework framework.

Но чтобы ответить на ваш вопрос, вы должны это сделать:

ArrayList<String> strings = new ArrayList<String>();
strings.add("String1");
strings.add("String2");

// To access a specific element:
System.out.println(strings.get(1));
// To loop through and print all of the elements:
for (String element : strings) {
    System.out.println(element);
}

Ответ 7

object get (int index) используется для возврата объекта, хранящегося на указанный индекс в вызывающей коллекции.

Фрагмент кода:

import java.util.*;


class main
{
    public static void main(String [] args)
    {
        ArrayList<String> arr = new ArrayList<String>();
        arr.add("Hello!");
        arr.add("Ishe");
        arr.add("Watson?");

        System.out.printf("%s\n",arr.get(2)); 

        for (String s : arr) 
        {
            System.out.printf("%s\n",s);
        } 
    }
}

Ответ 8

Трехлинейное решение, но работает достаточно хорошо:

int[] source_array = {0,1,2,3,4,5,6,7,8,9,10,11};
ArrayList<Integer> target_list = new ArrayList<Integer>();
for(int i = 0; i < source_array.length; i++){
    target_list.add(random_array[i]);
}

Ответ 9

Java 8 представила стандартную реализацию forEach() внутри интерфейса Iterable, вы можете легко сделать это с помощью декларативного подхода.

  List<String> values = Arrays.asList("Yasir","Shabbir","Choudhary");

  values.forEach( value -> System.out.println(value));

Вот код интерфейса Iterable

  default void forEach(Consumer<? super T> action) {
    Objects.requireNonNull(action);
    for (T t : this) {
        action.accept(t);
    }
}

Ссылка

Ответ 10

Прежде всего, вам нужно будет определить, какой тип данных вам нужно сохранить в своем списке. Как вы уже упоминали, что данные будут String, список должен быть сделан из типа String.

Затем, если вы хотите получить все элементы списка, вам нужно просто перебрать список, используя простой цикл for или для каждого цикла.

List <String> list = new ArrayList<>();
list.add("A");
list.add("B");

for(String s : list){
    System.out.println(s);
}

Кроме того, если вы хотите использовать raw ArrayList вместо общего, вам придется понизить значение. При использовании исходного массива ArrayList все элементы хранятся в виде объекта.

List list = new ArrayList();
list.add("A");
list.add("B");

for(Object obj : list){
    String s = (String) obj; //downcasting Object to String
    System.out.println(s);
}