2014-09-03 2 views
-1

Я пытался создать программу, которая ищет случайное число, но у меня были проблемы с импортом переменной «a» в другом методе. Я был бы рад, если бы получил какое-то объяснение. Я уже пытался сделать переменную статической, но это не работаетИспользование локальных переменных в других методах?

import java.util.Random; 

public class verschlüsselung { 

    private static void nummber(int a) { 
     Random r = new Random(); 
     a = r.nextInt(999); 
     System.out.println(a); 
    } 

    private static void search(int b) { 
     b = 0; 
     if(b =! a) { 
      for(b = 1; b =! a ; b++) { 
       if(b == a) { 
        System.out.println("found the number " + b); 
       } 
      } 
     } 
    } 

    public static void main(String args[]){ 
     nummber(0); 
     search(0); 
    } 
} 
+0

'b =! a' alright, но когда b == a, он не выполнит логику цикла. Кроме того, make number return type int возвращает произвольное число, сгенерированное и передающее его для поиска. – SparkOn

+1

Как поиск (int b) знает о? –

+3

Прежде всего, почему вы отправляете параметры в методы, когда первое, что вы делаете, - это изменение значения без использования того, которое вы им дали? Во-вторых, если вы хотите, чтобы переменная имела доступ несколькими методами, объявите ее вне методов как переменную класса. Другой вариант - заставить ваши методы возвращать переменную типа, который вы хотите. – csmckelvey

ответ

-1

Пусть это поможет вам:

private static int nummber(int a){ 

    Random r = new Random(); 

    a =r.nextInt(999); 

    System.out.println(a); 

    return a; 
} 



private static void search(int b, int a){ 

    b = 0; 

    if(b =! a){ 

     for(b =1; b =! a ; b++){ 

      if(b == a){ 

       System.out.println("found the number " + b); 

      } 

     } 

    } 

} 


public static void main(String args[]){ 

    int a = nummber(0); 
    search(0, a); 


} 
+0

Не просто отправьте код. Объясните, что вы сделали и почему он работает, чтобы решить проблему OP. – csmckelvey

+0

это будет искать другую "а" – Amir009

0

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

0

Объявите переменную 'a' статической и удалите параметр 'a', переданный в функции nummber() . Эта функция не требует ввода, поскольку она присваивает значение случайного числа глобальной статической переменной «a», к которой обращается в методе search().

ваше заявление и подпись метода следует читать:

частных статических Int А; частный статический пустот nummber() {....}

Смежные вопросы