Всё компилируется и выводит случайные числа в нужном диапазоне. null тоже работает при вылетах за диапазон. Но условие не выполняется. public static String getPrediction() { String [] quest = {ASK_AGAIN_LATER, CERTAIN, DEFINITELY, MOST_LIKELY, NO, OUTLOOK_GOOD, TRY_AGAIN, VERY_DOUBTFUL}; Random r = new Random(); int x = r.nextInt(8); if(x<0 || x>7){ return null; } //напишите тут ваш код return quest[x]; }