在java/android中比较浮点值是否在特定范围内

在java/android中比较浮点值是否在特定范围内,java,android,Java,Android,我的代码中有一个浮点值 我希望使用多个if-else语句来检查它是否在0,0.5或0.5,1或1.0,1.5或1.5,2.0范围内。请为我提出一个实现这一目标的方法 我之前认为,我可以得到float的精确值。所以,我使用了下面提到的代码。但后来我意识到,对浮点变量使用==子句是不明智的。所以,现在我需要检查变量值是否在特定范围内 float ratings=appCur.getFloat(appCur.getColumnIndexOrThrow(DbAdapter.KEY_ROWID));

我的代码中有一个浮点值

我希望使用多个if-else语句来检查它是否在0,0.5或0.5,1或1.0,1.5或1.5,2.0范围内。请为我提出一个实现这一目标的方法

我之前认为,我可以得到float的精确值。所以,我使用了下面提到的代码。但后来我意识到,对浮点变量使用==子句是不明智的。所以,现在我需要检查变量值是否在特定范围内

float ratings=appCur.getFloat(appCur.getColumnIndexOrThrow(DbAdapter.KEY_ROWID));


            if(ratings==0){
                ivRate.setImageResource(R.drawable.star0);
            }
            else if(ratings==0.5){
                ivRate.setImageResource(R.drawable.star0_haf);
            }
            else if(ratings==1){
                ivRate.setImageResource(R.drawable.star1);
            }
            else if(ratings==1.5){
                ivRate.setImageResource(R.drawable.star1_haf);
            }
            else if(ratings==2){
                ivRate.setImageResource(R.drawable.star2);
            }
这样

  float n;

?
  if (n<0.5f)  {  // first condition
  } else if (n<1f) { // second condition
  } else if (n<1.5f) { // and so on...
  }
    float x = ...
    if (x >= 0.0F && x < 0.5F) {
        // between 0.0 (inclusive) and 0.5 (exclusive)
    } else if (x >= 0.5F && x < 1.0F) {
        // between 0.5 (inclusive) and 1.0 (exclusive)
    } else if (x >= 1.0F && x < 1.5F) {
        // between 1.0 (inclusive) and 1.5 (exclusive)
    } else if (x >= 1.5F && x <= 2.0F) {
        // between 1.5 (inclusive) and 2.0 (inclusive)
    } else {
        // out of range
    }