ruby编码中碰到的一个诡异问题

发现用if进行多重嵌套时,总是报错,"syntax error, unexpected $end, expecting kEND ",但使用case后,正常通过,匪夷所思!


 原编码如下:
    while i <2 
       userSheet.Cells(i,2).Value="111";
       userSheet.Cells(i,3).Value="aaa";
       userSheet.Cells(i,4).Value="group";
       userSheet.Cells(i,5).Value="kk";
       userSheet.Cells(i,6).Value="女";
       userSheet.Cells(i,7).Value="aaa@163.net";
       userSheet.Cells(i,8).Value="身份证";
       userSheet.Cells(i,9).Value="123";
       userSheet.Cells(i,10).Value="小学";
       userSheet.Cells(i,11).Value="12345";
       userSheet.Cells(i,12).Value="123456";
       userSheet.Cells(i,13).Value="火星";
       userSheet.Cells(i,14).Value="12345678";
       j=j+1;
       i=i+1;       
        if i<10 then
         userSheet.Cells(i,1).Value="test"+"0000000"+j.to_s;
        else if i<100 then
          userSheet.Cells(i,1).Value="test"+"000000"+j.to_s;
        else if i<1000 then
           userSheet.Cells(i,1).Value="test"+"00000"+j.to_s;
        else i<10000
          userSheet.Cells(i,1).Value="test"+"0000"+j.to_s;
        end       
     end   

      

通过后的编码:
while i <22
    
       userSheet.Cells(i,2).Value="111";
       userSheet.Cells(i,3).Value="aaa";
       userSheet.Cells(i,4).Value="zqd-group";
       userSheet.Cells(i,5).Value="tt";
       userSheet.Cells(i,6).Value="女";
       userSheet.Cells(i,7).Value="aaa@163.net";
       userSheet.Cells(i,8).Value="身份证";
       userSheet.Cells(i,9).Value="123";
       userSheet.Cells(i,10).Value="小学";
       userSheet.Cells(i,11).Value="12345";
       userSheet.Cells(i,12).Value="123456";
       userSheet.Cells(i,13).Value="火星";
       userSheet.Cells(i,14).Value="12345678";
       j=j+1;
       i=i+1;
             case i
         when 1..9
            userSheet.Cells(i,1).Value="test"+"0000000"+j.to_s;
         when 10..99
          userSheet.Cells(i,1).Value="test"+"000000"+j.to_s;
         when 100..999
           userSheet.Cells(i,1).Value="test"+"00000"+j.to_s;
         else 1000..1100
          userSheet.Cells(i,1).Value="test"+"0000"+j.to_s;      
       end
     end  
Tag标签: ruby
posted @ 2008-06-26 10:44 slaughter 阅读(85) 评论(1)  编辑 收藏 网摘 所属分类: Watir&ruby自动化测试开发

  回复  引用    
#1楼 2008-08-13 16:19 | berek [未注册用户]
还差一个end;一般不要这么用,只会造成混乱,应该:if...elsif...else...end

标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
Google站内搜索
[推荐职位]上海盛大网络招聘架构师



China-pub 计算机图书网上专卖店!6.5万品种 2-8折!
近千种 9-95 新二手计算图书火热销售中!
开发者征途系统新作:《设计模式——基于C#的工程化实现及扩展》

相关文章:


相关搜索:
ruby

相关链接: