zoukankan      html  css  js  c++  java
  • Lua中使用continue 小练习

    今天在工作中遇见一个小问题,需要在lua中使用continue的用法,手动写了一些,加深印象

    首先来提一下lua中的 for 循环。

    
    --从 1到10遍历输出
    for i = 1,10,do
         print(i)
         end 
    --从1到10,以每次增2遍历输出
    for i = 1,10,2 do
         print(i)
         end 
    --当然你也可以从大到小遍历
    for i = 10,1,-1 do
         print(i)
    end  
    
    

    OK,再看一下repeat 用法好了,这个类似do while语句,循环体开始程序都会执行一次,until条件成立的时候退出.

    a = 5
    repeat
        a = a * 3
        print("value is",a)
        until(a > 30)
    

    while do 语句刚好和repeat 相反,条件成立开始执行循环,不成立退出。

    a = 10
    while (a < 15) do
        a = a +1
        print("value a is ",a)
    end
    

    好了,接下来我们用上面的组合模拟一下continue。

    • 方法一

    在循环体中使用repeat,在想要continue的地方使用break 就好。

    for i = 1, 10,2 do
        repeat
            if i == 5 then
                print("enter continue")
                break
            end
            print("loop",i)
        until true
    end
    
    • 方法二

    在循环体中使用while 语句,在想要continue的地方使用break 跳出当前循环。(多个循环体中,break会依次从内到外退出当前循环体)

    for i = 1,10 do 
        while true do
            if i %2 == 0 then
                print("continue",i)
                break
            end
            print("loop",i)    
            break
        end
    end
    
    • 方法三

    通过新版本goto来模拟此用法

    for i = 1, 10 do
     if i%2 == 0 then
        print("continue",i)
         goto continue
         end
            print("loop",i)
         ::continue::
        end
    
  • 相关阅读:
    java设计模式简介
    java设计模式--单例模式
    判断整形回文数
    常用正则表达式 捕获组(分组)
    [转]十分钟搞定Vue搭建
    ActiveX界面已显示,调用方法报undefined的处理办法
    [转]纯js导出json到excel(支持chrome)
    webapi 开启gzip压缩
    webapi下载文件
    iis添加共享目录为虚拟目录
  • 原文地址:https://www.cnblogs.com/xiaoqiangink/p/11993798.html
Copyright © 2011-2022 走看看