int recourdCount = 10;
int pageSize = 6;
Convert.ToInt32(Math.Ceiling(Convert.ToDecimal(recourdCount)/Convert.ToDecimal(pageSize)));上面是我的方法,但感觉太多,而且不好,他强制把Decimal 转为 Int32要怎么写呢

解决方案 »

  1.   

    recourdCount % pageSize == 0 ? recourdCount/pageSize : recourdCount/pageSize + 1;
      

  2.   

    改一下:
    recourdCount/pageSize  + (recourdCount % pageSize == 0 ? 0: 1);
      

  3.   

    int v=(a+b-1)/b;例:
    int v=(10+6-1)/6
    v=2
      

  4.   

    这两种方法都可以:
    int ret = Convert.ToInt32(1.0 * recourdCount / pageSize);
    ret = Convert.ToInt32((double)recourdCount / pageSize);
      

  5.   

    Convert.ToInt32(Math.Ceiling(recourdCount*1.0/pageSize*1.0));
      

  6.   

    int ret = Convert.ToInt32(Math.Ceiling(1.0 * recourdCount / pageSize));
    ret = Convert.ToInt32(Math.Ceiling((double)recourdCount / pageSize));
      

  7.   

    int ret = Convert.ToInt32(Math.Ceiling(1.0 * recourdCount / pageSize));
      

  8.   

    Convert.ToInt32(recourdCount*1.0/pageSize);
      

  9.   

    Convert.ToInt32 貌似是4舍5入得
      

  10.   


     if ( recourdCount % pageSize  == 0)
                {
                    ys = recourdCount % pageSize;
                }
                else
                {
                    ys =  recourdCount % pageSize    + 1;
                }