读书人

问一个简单有关问题阿

发布时间: 2012-09-07 10:38:15 作者: rapoo

问一个简单问题阿,
想根据i值(Int)不同的区间,来定义ibatch的值(int),用了switch ,但总是说 case i >= 0 && i <= 3000:
不能将布尔类型转换int。为什么啊

C# code
                     switch (ibatch)                     {                         case i >= 0 && i <= 3000:                             ibatch=1;                             break;                         case i>3000 && i<=6000:                             ibatch = 2;                             break;                         case i > 6000 && i <= 9000:                             ibatch = 3;                             break;                         case i > 9000 && i <= 12000:                             ibatch = 4;                             break;                         case i > 12000 && i <= 15000:                             ibatch = 5;                             break;                         case i > 15000 && i <= 18000:                             ibatch = 6;                             break;                     }


[解决办法]
switch/case只能用特定值,不能区间,

你这个只能用if/else if/else来写:

if (i >= 0 && i <= 3000)
ibatch=1;
else if (i>3000 && i<=6000)
ibatch = 2;

else if ( i > 6000 && i <= 9000)
ibatch = 3;

else if (i > 9000 && i <= 12000)
ibatch = 4;

else if (i > 12000 && i <= 15000)
ibatch = 5;
else if (i > 15000 && i <= 18000)
ibatch = 6;

[解决办法]
探讨

switch/case只能用特定值,不能区间,

你这个只能用if/else if/else来写:

if (i >= 0 && i <= 3000)
ibatch=1;
else if (i>3000 &am……

读书人网 >C#

热点推荐