Java 如何从列表中选择随机字符串
我正在尝试创建一个程序来刺激从卡片组中挑选卡片。我曾尝试使用Java 如何从列表中选择随机字符串,java,string,random,Java,String,Random,我正在尝试创建一个程序来刺激从卡片组中挑选卡片。我曾尝试使用随机类来选择套装和等级,但我无法让它工作。这是到目前为止我的代码 String[] rank = {"Ace", "2", "3", "4", "5", "6", "7", "8", "9", "10", "Jack", "Queen", "King"}; int idx = new Random().nextInt(rank.length); String random = (rank[idx]); Str
随机
类来选择套装
和等级
,但我无法让它工作。这是到目前为止我的代码
String[] rank = {"Ace", "2", "3", "4", "5", "6", "7", "8", "9", "10", "Jack", "Queen", "King"};
int idx = new Random().nextInt(rank.length);
String random = (rank[idx]);
String[] suit = {"Clubs", "Diamonds", "Hearts", "Spades"};
int idx = new Random().nextInt(suit.length);
String random = (suit[idx]);
System.out.println("The card you picked is " + Arrays.toString(rank) + " of " + Arrays.toString(suit));
我相信这很简单,但我对Java还比较陌生,所以非常感谢您的帮助 请务必添加错误,您没有包括您遇到的问题 但我希望是这样的: 1) 字符串random声明两次 2) 不需要Arrays.toString()
System.out.println("The card you picked is " + **Arrays.toString(rank)** + " of " + Arrays.toString(suit));
为什么要使用array.ToString()
请务必添加错误,您没有包括您遇到的问题 但我希望是这样的: 1) 字符串random声明两次 2) 不需要Arrays.toString()
System.out.println("The card you picked is " + **Arrays.toString(rank)** + " of " + Arrays.toString(suit));
为什么要使用array.ToString()
问题就在这里:
System.out.println(“您选择的卡片是”+Arrays.toString(rank)+“of”+Arrays.toString(suit))代码>。您每次都在打印项目的完整列表
您需要做的是放置(排名[idx])
和(西装[idx])将>编码为字符串变量并打印这些变量
String[] rank = {"Ace", "2", "3", "4", "5", "6", "7", "8", "9", "10", "Jack", "Queen", "King"};
int idx = new Random().nextInt(rank.length);
String randomRank = (rank[idx]);
String[] suit = {"Clubs", "Diamonds", "Hearts", "Spades"};
idx = new Random().nextInt(suit.length);
String randomSuit = (suit[idx]);
System.out.println("The card you picked is " + randomRank + " of " + randomSuit);
问题就在这里:System.out.println(“您选择的卡片是”+Arrays.toString(rank)+“of”+Arrays.toString(suit))代码>。您每次都在打印项目的完整列表
您需要做的是放置(排名[idx])
和(西装[idx])将>编码为字符串变量并打印这些变量
String[] rank = {"Ace", "2", "3", "4", "5", "6", "7", "8", "9", "10", "Jack", "Queen", "King"};
int idx = new Random().nextInt(rank.length);
String randomRank = (rank[idx]);
String[] suit = {"Clubs", "Diamonds", "Hearts", "Spades"};
idx = new Random().nextInt(suit.length);
String randomSuit = (suit[idx]);
System.out.println("The card you picked is " + randomRank + " of " + randomSuit);
你做得对。您只需打印正确的变量:
String[] rank = // ...
int rankIndex = new Random().nextInt(rank.length);
String randomRank = rank[rankIndex];
String[] suit = // ...
int suitIndex = new Random().nextInt(suit.length);
String randomSuit = suit[suitIndex];
System.out.println("The card you picked is " + randomRank + " of " + randomSuit);
你做得对。您只需打印正确的变量:
String[] rank = // ...
int rankIndex = new Random().nextInt(rank.length);
String randomRank = rank[rankIndex];
String[] suit = // ...
int suitIndex = new Random().nextInt(suit.length);
String randomSuit = suit[suitIndex];
System.out.println("The card you picked is " + randomRank + " of " + randomSuit);
您正在重复变量名idx
和random
,请选择不同的名称并按如下方式输出:
System.out.println("The card you picked is " +random2+ " of " +random);
//The card you picked is 2 of Spades
实时Java示例:
如果要重复变量名称idx
和random
,请选择不同的名称并按如下方式输出:
System.out.println("The card you picked is " +random2+ " of " +random);
//The card you picked is 2 of Spades
实时Java示例:
“但我不能让它工作”你可以做得更好:)你有两个同名的变量idx,random,你打印出了错误的变量,应该是两个随机值。你在重复你的变量,idx
和random
使用不同的名称。“但我无法让它工作”你可以做得更好:)你有两个同名的变量idx,random,你打印出的变量是错误的,应该是两个随机值。你在重复你的变量,idx
和random
使用不同的名称。