Я не уверен, что это отвечает на любые ваши вопросы - но вот некоторая информация об использовании массивов в Java.
Я пытался выяснить, как распечатать это charHpArray
длядва дня и все, что я нашел в Google, было бесполезно, потому что они не содержат другого массива.По сути, я пытаюсь сделать так, чтобы level
работал как параметр, поэтому, когда level
= 1 hp
равно 5, а когда level
равно 2 hp
равно 10 и т. Д.
Печать charHpArray с использованием уровня:
Случай, когда элементы массива charHpArray
печатаются с использованием level
элементов массива в качестве индекса - следующим образом.
int[] level ={1,2,3,4,5,6,7,8,9,10};
int[] charHpArray = {5,10,15,20,25,30,35,40,45,50};
for (int i : level) {
int j = charHpArray [i];
System.out.println("Level " + i + ", charHpArray element: " + j);
}
Это ожидаемый результат:
Level 1, charHpArray element: 10
Level 2, charHpArray element: 15
Level 3, charHpArray element: 20
Level 4, charHpArray element: 25
Level 5, charHpArray element: 30
Level 6, charHpArray element: 35
Level 7, charHpArray element: 40
Level 8, charHpArray element: 45
Level 9, charHpArray element: 50
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 10
at Testing.main(Testing.java:35)
Обратите внимание, что первый элемент charHpArray
5 не напечатан .Обратите внимание на последнюю строку в выводе: исключение во время выполнения;см. объяснение ниже.
Также, если бы вы могли сказать мне, почему не работает level + #, это было бы здорово.
InJava, массивы имеют элементы и индексы.Первый элемент в массиве имеет индекс 0 (всегда).Следующий элемент имеет индекс 1 и так далее.Таким образом, последний элемент массива имеет индекс: длина массива минус 1.
Вот руководства Oracle по Java для использования Arrays .
Таким образом, если вы попытаетесь получить доступ к элементу в индексе, которого нет в массиве, вы встретите исключение времени выполнения: ArrayIndexOutOfBoundsException
charHpArray
имеет 10 элементов.К каждому элементу можно получить доступ и распечатать его индекс следующим образом:
System.out.println("First element charHpArray [0]: " + charHpArray[0]); // this will print 5
System.out.println("Second element charHpArray [1]: " + charHpArray[1]); // this will print 10
...
System.out.println("Tenth element charHpArray [9]: " + charHpArray[9]); // this will print 50
-OR-
for (int i = 0; i < 10; i++) {
System.out.println("Element " + (i+1) + " of charHpArray: " + charHpArray[i]);
}
Вывод:
Element 1 of charHpArray: 5
Element 2 of charHpArray: 10
Element 3 of charHpArray: 15
Element 4 of charHpArray: 20
Element 5 of charHpArray: 25
Element 6 of charHpArray: 30
Element 7 of charHpArray: 35
Element 8 of charHpArray: 40
Element 9 of charHpArray: 45
Element 10 of charHpArray: 50
В приведенном выше коде 10 - длина массива (массив состоит из 10 элементов).Это может быть достигнуто в коде с помощью переменной длины массива: charHpArray.length
System.out.println("Size of the array: " + charHpArray.length); // this prints 10.
Итак, код для печати может быть таким:
for (int i = 0; i < charHpArray.length; i++) {
System.out.println("Element " + (i+1) + " of charHpArray: " + charHpArray[i]);
}