Использование одной переменной для изменения другой переменной, заданной методами - PullRequest
0 голосов
/ 10 января 2019

Я пытаюсь, если stringNumber (randomized) равен единице, сделать num 1. Если номер строки равен двум, сделать num два и т. Д., Используя метод. Это пример, и настоящая программа будет в гораздо большем масштабе.

import java.util.Random;

  public static void main(String[] args) {
      int num;
      int num2;
      int num3;
      num = num2string(StringNumber);
      num2 = num2string(StringNumber);
      num3 = num2string(StringNumber);
      System.out.println((num + 10)); //should print out 11, 12, or 13
      System.out.println(num2);
      System.out.println(num3);
  }

  //Picks a number.
  public static String numPicker() {
      Random rgen = new Random();
      int rNumber;

          rNumber = rgen.nextInt(3) + 1;

      if (rNumber == 1)
          return "Number 1";
      else if (rNumber == 2) 
          return "Number 2";
      else if (rNumber == 3)
          return "Number 3";
      else
          return null; //Should never happen
  }

  private static int num2string() {
      //In this case x = One
      if (StringNumber.equals("Number 1"))
          return num as 1;
      else if (StringNumber.equals("Number 2"))
          return num as 2;
      else if (StringNumber.equals("Number 3"))
          return num as 3;
      else
          return null; //should never happen
  }

Правильная версия этого будет делать следующее: 11, 12 или 13 должны распечатать. Затем 1, 2 или 3 должны распечатать. Затем 1, 2 или 3 должны распечатать снова.

Ответы [ 2 ]

0 голосов
/ 10 января 2019

Разобрался! Мне пришлось преобразовать num в строки, а затем разобрать его, как только я закончил.

String StringNumber = RandomNumberGenerator();
String num;
num = num2string(StringNumber);
int num2 = Integer.parseInt(num);

Создание переменных для вызова метода.

private static String num2string(String StringNumber) {

    if (StringNumber.equals("Number 1"))
        return "1";
    else if (StringNumber.equals("Number 2"))
        return "2";
    else if (StringNumber.equals("Number 3"))
        return "3";
    else
        return null;
}
0 голосов
/ 10 января 2019

Рассмотрите возможность использования метода Integer.parseInt (), который принимает строку в качестве аргумента и извлекает из нее int ... Также используйте equals () при сравнении двух строк.

...