Каков синтаксис для использования ArrayList в качестве параметра? - PullRequest
0 голосов
/ 09 октября 2019

В основном я хочу создать отдельный метод для "метода", который я создал в public static void main.

В этом методе я манипулировал списком массивов и не уверен, как использоватьсписок массивов в качестве параметра в функции

import java.util.ArrayList;

public class ReverseArrayList{
  public static void main(String[] args) {
    //  Note: I used a sample array with 6 elements. 
    //  I explain the code as if I am strictly using 6 elements
    //  However this may be done with any # of elements 
    ArrayList<String> reverseMe = new ArrayList<String>();
    reverseMe.add("I");   
    reverseMe.add("am");
    reverseMe.add("going");
    reverseMe.add("to");      
    reverseMe.add("be");
    reverseMe.add("reversed");

    //  This loop will run until we reach the midpoint of the array. At the midpoint, all the elements would be reversed
    for (int i = 0; i < reverseMe.size()/2; i++){

      //  Save the first three values for later use. 
      String initial = reverseMe.get(i);

      //  The 1st element will be assigned to the last element, upto the midpoint 
      reverseMe.set(i, reverseMe.get(reverseMe.size() - i - 1));

      //  The last element will be assigned to the 1st element, upto the midpoint
      reverseMe.set(reverseMe.size() - i - 1, initial);
    }
    //  Displays the contents of the arraylist
    for(String i: reverseMe){
      System.out.println(i);
    }
  }
}

Я исследовал синтаксис, но не смог найти ни одного хорошего видео, показывающего синтаксис.

Ответы [ 2 ]

1 голос
/ 09 октября 2019

ArrayList реализует List, и, следовательно, вы можете использовать его в качестве параметра, например,

public void testMethod(List<String> list){
//....rest of your code goes here
}

Всегда помните, что объекты передаются по ссылке, и поэтому любые изменения, внесенные вами в список, будут отражены всписок в методе, из которого вызывается этот метод.

Кроме того, для вашего кода в java есть поддержка оператора diamond, т.е. вам не нужно указывать универсальный тип в правой части =. А слева, т. Е. Эталонная переменная должна быть родительским интерфейсом для удобства обслуживания, например,

List<String> list = new ArrayList<>();

1 голос
/ 09 октября 2019
you just need something like below

import java.util.ArrayList;

public class ReverseArrayList{
  public static void main(String[] args) {
    //  Note: I used a sample array with 6 elements. 
    //  I explain the code as if I am strictly using 6 elements
    //  However this may be done with any # of elements 
    ArrayList<String> reverseMe = new ArrayList<String>();
    reverseMe.add("I");   
    reverseMe.add("am");
    reverseMe.add("going");
    reverseMe.add("to");      
    reverseMe.add("be");
    reverseMe.add("reversed");
    reverseList(reverseMe);
  }
private static void reverseList(ArrayList<String> arrayList){
 //  This loop will run until we reach the midpoint of the array. At the midpoint, all the elements would be reversed
    for (int i = 0; i < reverseMe.size()/2; i++){

      //  Save the first three values for later use. 
      String initial = reverseMe.get(i);

      //  The 1st element will be assigned to the last element, upto the midpoint 
      reverseMe.set(i, reverseMe.get(reverseMe.size() - i - 1));

      //  The last element will be assigned to the 1st element, upto the midpoint
      reverseMe.set(reverseMe.size() - i - 1, initial);
    }
    //  Displays the contents of the arraylist
    for(String i: reverseMe){
      System.out.println(i);
    }

}
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...