Java初学者:这是最佳实践(randoms和conditionals)吗?

0 java string random if-statement

我刚开始学习Java,我一直在玩一些想法.我编写了以下一小段代码,在运行时会在房子中输出不同的房间.房间由值1和3之间的随机整数决定.代码似乎工作得很好.然而,由于我是编程新手,我担心的是我可能误解了其中一个教程,告知我的工作并使用了一种低效的方式来完成它.

任何人都可以告诉我,如果我使用最佳实践来实现我想要的结果并解释我可以做出的任何更改,以使代码更好?

import java.util.Random;

public class Rooms {

  public static void main(String[] args) {

  Random random = new Random();
  int roomNumber = random.nextInt(3) + 1;
  String getRoom = "";

  if (roomNumber == 1) {
    getRoom = "Living Room";
  } else if (roomNumber == 2) {
    getRoom = "Kitchen";
  } else if (roomNumber == 3) {
    getRoom = "Bathroom";
  }

  System.out.println(getRoom);

  }
}
Run Code Online (Sandbox Code Playgroud)

感谢您阅读本文.

Rei*_*eus 5

你可以简单地把它rooms放入一个数组:

String[] rooms = { "Living Room", "Kitchen", "Bathroom" };
int roomNumber = random.nextInt(rooms.length);
System.out.println(rooms[roomNumber]);
Run Code Online (Sandbox Code Playgroud)

背景: Random.nextInt(n)将一个int参数作为upperbound,返回n0和(但不包括)n之间的整数.使用rooms.length此处将允许您从数组中选择随机索引而不会导致ArrayIndexOutOfBoundsException.