int v1,v2,v3;
v1 = 10;
v2 = 3;
v3 = 10/3;if (v3 != v1/v2) v3 ++;

解决方案 »

  1.   

    public int getMyInt(int a,int b) {
    return(((double)a/(double)b)>(a/b)?a/b+1:a/b);
    }
    调用:
    System.out.println(getMyInt(10,3));
      

  2.   

    song的是错误的。
    double t=((double)v1)/((double)v2);
    if(v3!=t){
     if(t<0)
       v3--;
     else
       v3++;
    }
      

  3.   

    二楼那个方法是通用的,你可以建立一个类测试,进行比较,如下:
    public class myClass {
    public static int getMyInt(int a,int b) {
    return(((double)a/(double)b)>(a/b)?a/b+1:a/b);
    }public static void main(String args[]) {
    System.out.println(getMyInt(10,3));
    System.out.println(getMyInt(9,3));
    }
    }
      

  4.   

    另外补充一下: jianfeizhu(飞扬)和 rainight(雨夜聆风) 的答案当刚好整除的时候似乎不行。
       “Math.floor((double)v1/(double)v2+1);”
       “Math.ceil(v1/v2)+1”
      

  5.   

    BigDecimal b1 = new BigDecimal(10);
    BigDecimal b2 = new BigDecimal(3);
    BigDecimal b3 = new BigDecimal(2);
    System.out.println(b1.divide(b2,0,BigDecimal.ROUND_HALF_DOWN).intValue());
    System.out.println(b1.divide(b3,0,BigDecimal.ROUND_HALF_DOWN).intValue());