import java.math.BigInteger;
public class Classes{
static int i; //"i" is initialized
static int x = 200; //FYI, x is the upper limit for primes to be found (ex, in this case, 0 - 200)
public static void main(String[] args) {
for(i = 0; i < x;){ //"i" is assigned the value of 0
BigInteger one = BigInteger.valueOf(i); // The following lines find the prime(s)
one = one.nextProbablePrime(); // Order by which primes are found - int > BigInteger > int
i = one.intValue(); //'i" is re-assigned the a value
if(i >= x){
System.exit(i);
}
switch(i){
case i < 100: // ERROR HERE, "Type mismatch: cannot convert from boolean to int"
hex();
break;
case i > 100: // ERROR HERE, "Type mismatch: cannot convert from boolean to int"
baseTen();
break;
}
}
}
static void hex(){ //Probably unimportant to solving the problem, but this is used to convert to hex / print
String bla = Integer.toHexString(i);
System.out.println(bla);
}
static void baseTen(){ //Probably unimportant to solving the problem, but this is used print
System.out.println(i);
}
}
みなさん、こんにちは。お元気でお過ごしください。スタック オーバーフローに参加するのはこれが初めてです。それでは、始めましょう!上記のコードは、Java を学習する際の練習用として作成したもので、それ以来、Java を練習したり遊んだりするために使用しています。このプログラムは素数を見つけるために作成され、しばらくの間機能しています。switch ステートメントを試してみることに決めて以来、問題が発生しています。コードを実行しようとすると、Eclipse IDE で「型の不一致: boolean から int に変換できません」と表示され、このためプログラムの実行が拒否されます。コードに型をキャストするポイントをコメントしましたが、「i」を「boolean」型にキャストする場所はどこにもありません。この問題が発生する理由について何か考えがある場合は、お知らせください。追加情報が必要な場合は、お問い合わせください。ありがとう!