问一个简单问题阿,想根据i值(Int)不同的区间,来定义ibatch的值(int),用了switch ,但总是说 case i 0 &&
问一个简单问题阿, 想根据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;