番号が他の2つの番号の間にあるかどうかを確認するにはどうすればよいですか?
擬似コード:
var = 458;
if (var is between 0 and 1000) give positive.
if (var is between 1001 and 2000) give negative.
if (var is between 2001 and 3000) give negative.
AS3では?
前もって感謝します。
番号が他の2つの番号の間にあるかどうかを確認するにはどうすればよいですか?
擬似コード:
var = 458;
if (var is between 0 and 1000) give positive.
if (var is between 1001 and 2000) give negative.
if (var is between 2001 and 3000) give negative.
AS3では?
前もって感謝します。
何度もチェックする場合は、関数を作成するだけです:
function check(min:Number , value:Number , max:Number):Boolean{
return min > value ? false : ( max < value ? false : true );
}
値が最小値と最大値の間にある場合、true を返します。
if (var >= 0 && var <= 1000) {
return true
}
else if (var >= 1001 && var <= 2000) {
return false
}
else if (var >= 2001 && var <= 3000) {
return false
}
ただし、条件 2 と 3 は両方とも false を返し、条件も true/false に評価されるため、次のように簡単に実行できます。
return (var >= 0 && var <= 1000)
フレームワークには、そのためのメソッドがあります。
mx.utils.ObjectUtil::numericCompare()
ドキュメントから:
2 つの数値を比較します。戻り値 int — 0 は両方の数値が NaN であることを示します。a のみが NaN の場合は 1。b のみが NaN の場合は -1。a が b より小さい場合は -1。a が b より大きい場合は 1。