Пытался использовать список массивов с методами и конструктором. Можно ли это оптимизировать? - PullRequest
0 голосов
/ 08 мая 2020

Я немного попрактиковался в кодировании на Codecademy, и я решил поиграться с ArrayLists самостоятельно. Codecademy только показала мне, как использовать println для достижения того значения, которое я хочу вывести на консоль. Вместо этого я подумал: а что, если я захочу использовать конструкторы и методы? Я придумал это, немного поигравшись, но поскольку я все еще новичок, если бы я мог оптимизировать это лучше для того же результата, я бы хотел знать, как это сделать. Большое спасибо за ваше время!

import java.util.ArrayList;

public class List {
  //set variables to be used in constructor and custom method
  String itemValue;
  int itemIndex;

  //declare shoppingList array
  ArrayList<String> shoppingList = new ArrayList<String>();
  {
    //set what is inside the shoppinglist array
    shoppingList = new ArrayList<String>();
    shoppingList.add("Pumpkin");
    shoppingList.add("Carving Kit");
    shoppingList.add("Halloween Decorations");
    shoppingList.add("Face Paint");
  }

  public List(String itemName) {
    //set the value of what we want to find our index for to itemValue
    itemValue = itemName;
  }

  public void getIndex() {
    //sets the index of itemValue to itemIndex then prints the name and index
    itemIndex = shoppingList.indexOf(itemValue);
    System.out.println("The index of " + itemValue + " is " + itemIndex + "!");
  }
  public static void main(String[] args) {
    //declare shoppingIndex object
    List shoppingIndex = new List("Face Paint");
    //Calls get index to print our Item name and its index in shoppingList
    shoppingIndex.getIndex();
  }

}

1 Ответ

0 голосов
/ 08 мая 2020

Избегайте комментариев '//', полагайтесь на читаемый код и javado. c

После java7

  ArrayList<String> shoppingList = new ArrayList<String>();

становится

  ArrayList<String> shoppingList = new ArrayList<>();

инициализаций, таких как shoppingList должно быть помещено в конструктор

itemValue должно быть закрытым окончательным

itemIndex может быть преобразовано в локальную переменную в getIndex

getIndex имя предполагает, что он вернет индекс, но его пустота, лучше вернуть индекс и позволить пользователю метода решить, что с ним делать.

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