1から20までの乱数を作成する必要があり、その数に基づいて( "If-Then"ステートメントを使用)、ImageViewのイメージを設定する必要があります。
Objective-Cでは、次のようになります。
int aNumber = arc4Random() % 20;
if (aNumber == 1) {
[theImageView setImage:theImage];
}
Javaでこれを行うにはどうすればよいですか?この方法で確認しましたが、数値の範囲(1〜20、2〜7など)を設定する方法がわかりません。
int aNumber = (int) Math.random()
Random Rand = new Random();
int n = Rand.nextInt(20); // Gives n such that 0 <= n < 20
ドキュメント:
この乱数ジェネレータのシーケンスから取得した、0(両端を含む)から指定した値(両端を含まない)までの間で均一に分散された疑似乱数を返します。したがって、この例では、0から19までの数になります。
Math.random()
は、[0,1 [からdouble
を返します。 Random.nextInt(int)
は、[0、int [からint
を返します。
あなたが試すことができます:
int aNumber = (int) (20 * Math.random()) + 1;
または
Random Rand = new Random();
int n = Rand.nextInt(20) + 1;
Math.random()を使用して、0と1の間の非包含のdoubleを生成できます。 Android Javadoc ここ 。