问一个简单问题阿,
想根据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;
[解决办法]