首页 > 代码库 > float和decimal执行效率 (只是代码 没有分析—)

float和decimal执行效率 (只是代码 没有分析—)

float版:

public static void getSmallFramPoint()        {            string framString ="Row,"+"Colum,"+ "framX," + "framY\r\n";            float i = 15f;            float j =70f ;            float a=0;            float b=0;            int row = 0;            int colum = 0;            int lan = 0;            int lon = 0;            for ( i = 15f; i <= 55f; i++)            {                lan =Convert.ToInt32(i);                for (j =70f; j <= 137f; j++)                {                    lon = Convert.ToInt32(j) ;                    for (a = i; a <= i + 1.005f; a += 0.01f)         //0.005用来控制浮点型的误差                    {                        row++;public static void getSmallFramPoint()        {            string framString ="Row,"+"Colum,"+ "framX," + "framY\r\n";            float i = 15f;            float j =70f ;            float a=0;            float b=0;            int row = 0;            int colum = 0;            int lan = 0;            int lon = 0;            for ( i = 15f; i <= 55f; i++)            {                lan =Convert.ToInt32(i);                for (j =70f; j <= 137f; j++)                {                    lon = Convert.ToInt32(j) ;                    for (a = i; a <= i + 1.005f; a += 0.01f)         //0.005用来控制浮点型的误差                    {                        row++;                        for(b=j;b<=j+1.005;b+=0.01f)                        {                            colum++;                            framString += row.ToString() + "," + colum.ToString() + "," + b.ToString("0.00") + "," + a.ToString("0.00") + "\r\n";                     }                     colum = 0;                    }                    row = 0;                    //输出                    System.IO.File.WriteAllText(@"G:\RZPU\20141118fishnet\test\" + lan.ToString() + "-" + lon.ToString() + ".csv", framString);                    framString = "Row," + "Colum," + "framX," + "framY\r\n";                                    }            }        }                        for(b=j;b<=j+1.005;b+=0.01f)                        {                            colum++;                            framString += row.ToString() + "," + colum.ToString() + "," + b.ToString("0.00") + "," + a.ToString("0.00") + "\r\n";                     }                     colum = 0;                    }                    row = 0;                    //输出                    System.IO.File.WriteAllText(@"G:\RZPU\20141118fishnet\test\" + lan.ToString() + "-" + lon.ToString() + ".csv", framString);                    framString = "Row," + "Colum," + "framX," + "framY\r\n";                                    }            }        }
 
decimal版:
public static void GetSmallFramPoint(decimal rows,decimal columns,int rowSpan,int columnSpan)        {            string framString = "Row," + "Colum," + "framX," + "framY\r\n";            decimal row=0;            decimal column=0;            decimal smallRow = 0;//遍历变量            decimal smallColumn = 0;//遍历变量            int lan = 0;//经纬度            int lon = 0;//经纬度            int rowNum=0;//行号            int columnNum=0;//列号            for (row = rows; row <rows + rowSpan; row++)            {                lan = Convert.ToInt32(row);                for (column = columns; column < columns + columnSpan; column++)                {                    lon = Convert.ToInt32(column);                    for (smallRow = row; smallRow <= row + 1; smallRow += 0.01m)                    {                        rowNum++;                        for (smallColumn = column; smallColumn <=column + 1; smallColumn += 0.01m)                        {                            columnNum++;                            framString += rowNum.ToString() + "," + columnNum.ToString() + "," + smallColumn.ToString() + "," + smallRow.ToString()+"\r\n";                        }                        columnNum = 0;                    }                    System.IO.File.WriteAllText(@"G:\RZPU\20141118fishnet\test\" + lan.ToString() + "-" + lon.ToString() + ".csv", framString);                    framString = "Row," + "Colum," + "framX," + "framY\r\n";                    rowNum = 0;                                    }                column = columns;            }            row = 0;        }

float和decimal执行效率 (只是代码 没有分析—)