【发布时间】:2017-03-10 04:17:54
【问题描述】:
我有这个方法。
错误提示
primeList 可能尚未初始化。
我不明白这怎么可能是真的。我觉得变量不可能在 for 循环之外被初始化。
我不知道如何初始化一个字符串
public void primesToANumber(long num) //finds all primes
{
String primeList ;
long pcount;
long limit = num;
JOptionPane.showMessageDialog(null,"Prime numbers between 1 and " + limit);
for(long i = 1; i < 100; i++)
{
boolean isPrime = true;
for(long j = 2; j < i ; j++)
{
if(i % j == 0)
{
isPrime = false;
break;
}
}
// print the number
if(isPrime)
{
primeList += i + ", ";
pcount++;
if(pcount % 12 ==0){
primeList += "\n";
}
}
}
JOptionPane.showMessageDialog(null, " " + primeList);
}
【问题讨论】:
-
String primeList =;甚至不应该编译 -
您不能在尚未初始化的变量上使用
+=。你要添加什么? -
投反对票是怎么回事?对于新用户来说,这是一个很好的问题!
-
@musefan 当然可以,但是在 google 或 this site 上进行简单的搜索就会发现这样的骗子可以解决问题...stackoverflow.com/q/2448843/5647260 - 否决工具提示说“确实不显示研究”
-
@AndrewLi 我研究并探索了类似的问题,但我无法弄清楚它与我的关系。
标签: java