gpt4 book ai didi

Java 在同一个 for 循环中找不到符号

转载 作者:行者123 更新时间:2023-11-29 09:55:46 26 4
gpt4 key购买 nike

在下面的代码中,即使我在同一个 for 循环中初始化了 number,也无法在 number++ 行中找到变量 number .谁能告诉我为什么?

import java.lang.Math;
import java.util.Random;

public class test
{
public static void main( String [] args )
{
String cardNumber;
double cardRandom;
int cardRandomNumber;
String[] cardSelection = new String[10];

for (int number = 0; number <= 9; );
{
Random ran = new Random();
cardRandom = ran.nextInt(52 - 1 + 1) + 1;
cardRandomNumber = (int) Math.round( cardRandom );

if ( cardRandomNumber > 0 && cardRandomNumber <= 52 )
{
cardNumber = "card" + cardRandomNumber;
System.out.println( cardNumber );
number++; // Says Error: Cannot find symbol
}
}
}
}

这个程序基本上只是从 1-52 中选择一个随机数,在它的开头添加“卡片”并打印出来。它应该打印出 10 个数字。

最佳答案

下一行中的最后一个分号必须去掉:

for (int number = 0; number <=  9; );

您基本上声明了一个没有主体的for 循环。好的 IDE 应该警告您此类错误。顺便说一句,递增循环计数器应该转到我们都期望的最后一个 for 表达式:

for (int number = 0; number <=  9; ++number) {
//..
}

顺便说一句,在消除了总是满足您的代码的不必要的变量和条件之后,您的代码看起来像这样:

public static void main(String[] args) {
Random r = new Random();
for (int number = 0; number <= 9; ++number) {
int cardRandom = 1 + r.nextInt(52);
String cardNumber = "card" + cardRandom;
System.out.println(cardNumber);
}
}

说真的。

关于Java 在同一个 for 循环中找不到符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12223184/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com