Установите тайм-аут в мыши, чтобы затухать и сохранить возвращаемое значение для данных в объекте. Затем, onmouseover, отмените таймаут, если в данных есть значение.
Удалите данные при обратном вызове fadeout.
На самом деле дешевле использовать mouseenter / mouseleave, потому что они не стреляйте в меню при стрельбе по мыши / мыши.
data[10] = {10,20,30,40,50,60,71,80,90,91};
Вышеупомянутое неверно (синтаксическая ошибка). Это означает, что вы назначаете массив data [10]
, который может содержать только элемент.
Если вы хотите инициализировать массив, попробуйте использовать Array Initializer :
int[] data = {10,20,30,40,50,60,71,80,90,91};
// or
int[] data;
data = new int[] {10,20,30,40,50,60,71,80,90,91};
Обратите внимание на разницу между двумя объявлениями. При назначении нового массива объявленной переменной необходимо использовать new
.
Даже если вы исправите синтаксис, доступ к данным [10]
все равно будет неправильным (вы можете получить доступ только данные [0]
до данные [9]
, потому что индекс массивов в Java начинается с 0). Доступ к данным [10]
вызовет исключение ArrayIndexOutOfBoundsException .
Попробуйте data = new int [] {10,20,30,40,50,60,71,80,90,91};
Вы не можете инициализировать массив подобным образом. В дополнение к тому, что предлагали другие, вы можете сделать:
data[0] = 10;
data[1] = 20;
...
data[9] = 91;
вы пытаетесь установить 10-й элемент массива в массив try
data = new int[] {10,20,30,40,50,60,71,80,90,91};
FTFY
Когда вы создаете массив размером 10, он выделяет 10 слотов, но от 0 до 9. Этот цикл for может помочь вам увидеть это немного лучше.
public class Array {
int[] data = new int[10];
/** Creates a new instance of an int Array */
public Array() {
for(int i = 0; i < data.length; i++) {
data[i] = i*10;
}
}
}