while 循环

当 while 后的条件成立的话,执行循环体内的语句,直到条件不成立,跳出循环

如果条件一直成立,或者循环体中的语句没有能让条件不成立的,则是死循环

julia> i = 1;

julia> while i <= 10
println(i)
global i += 1
end
1
2
3
4
5
6
7
8
9
10

在旧版本中,不需要 global 关键字

julia> i = 1;

julia> while i <= 10
println(i)
i += 1
end
1
2
3
4
5
6
7
8
9
10

for 循环

julia> for i = 1:10
println(i)
end
1
2
3
4
5
6
7
8
9
10

1:10 是一个 Range 对象,表示的是 1,2,3,4,5,6,7,8,9,10 序列

for 循环遍历这些数,将其逐一赋给变量 i

如果在其它作用域中没有引入变量 i ,那么它仅存在于 for 循环中

julia> for i = 1:10
println(i)
end
1
2
3
4
5
6
7
8
9
10 julia> i
ERROR: UndefVarError: i not defined

for 循环可以遍历任意容器

julia> for i in [1, 4, 9]
println(i)
end
1
4
9 julia> for i in ["julia", "python", "java"]
println(i)
end
julia
python
java

for 循环的多层嵌套

julia> for i = 1:3
for j = 4:6
println((i, j))
end
end
(1, 4)
(1, 5)
(1, 6)
(2, 4)
(2, 5)
(2, 6)
(3, 4)
(3, 5)
(3, 6)

更多的是下面这个写法

julia> for i = 1:3, j = 4:6
println((i, j))
end
(1, 4)
(1, 5)
(1, 6)
(2, 4)
(2, 5)
(2, 6)
(3, 4)
(3, 5)
(3, 6)

break 语句

break 语句是结束整个循环

while 循环中的 break 语句

julia> i = 1;

julia> while i <= 10
println(i)
if i == 5
break
end
global i += 1
end
1
2
3
4
5

for 循环中的 break 语句

julia> for j = 1:10
println(j)
if j == 5
break
end
end
1
2
3
4
5

从上面两个例子可以看到 break 语句使得循环在 i 和 j 等于 5 的时候退出了整个循环

continue 语句

continue 语句是结束本次循环继续下一次循环

while 循环的 continue 语句

julia> i = 1;

julia> while i <= 10
if i == 5
global i +=1
continue
end
println(i)
global i += 1
end
1
2
3
4
6
7
8
9
10

for 循环的 continue 语句

julia> for j = 1:10
if j == 5
j += 1
continue
end
println(j)
j += 1
end
1
2
3
4
6
7
8
9
10

continue 语句只在 i 和 j 等于 5 的时候跳出了循环,然后又继续循环

Julia - 循环的更多相关文章

  1. 如果你喜欢python,那你迟早会喜欢上julia的!

    你可曾想过有那么一门语言: 这门语言能够有C语言一样的速度,Ruby一样得活力(dynamism).像homoiconic一样的语言,它像Lisp一样有宏,但是也像Matlab一样有显而易见.熟悉的数 ...

  2. 在天河二号上对比Julia,Python和R语言

    Julia是一款高级高效为技术计算(technical computing)而设计的编程语言,其语法与其他计算环境类似.其为分布式计算和并行所设计,最知名的地方在于其接近C语言的高效率. 按开发者的话 ...

  3. 初试 Julia 语言 (转)

    原文地址: https://blog.csdn.net/seekiu/article/details/47397067 随着  Julia 1.0版本的推出,人工智能圈子比较炸锅, 好像这门小众语言要 ...

  4. Julia体验 语言基础

    以前听说过Julia,不过那时候官网还处于时不时宕机状态,最近Julia发布了1.0 released版本到处都是它的资讯,官网良心自带简体中文,趁着热度我也来试试,顺便聊记一二. 关于Julia J ...

  5. LiveScript 流程控制、循环以及列表推导式

    The LiveScript Book     The LiveScript Book Generators and Yield 你可以在你的 LiveScript 代码中使用 Ecmascript ...

  6. 破阵九解:Node和浏览器之事件循环/任务队列/异步顺序/数据结构

    前言 本文内容比较长,请见谅.如有评议,还请评论区指点,谢谢大家! >> 目录 开门见山:Node和浏览器的异步执行顺序问题 两种环境下的宏任务和微任务(macrotask &&a ...

  7. 【.net 深呼吸】细说CodeDom(8):分支与循环

    有人会问,为啥 CodeDom 不会生成 switch 语句,为啥没生成 while 语句之类.要注意,CodeDom只关心代码逻辑,而不是语法,语法是给写代码的人用的.如果用.net的“反编译”工具 ...

  8. Recurrent Neural Network系列1--RNN(循环神经网络)概述

    作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 本文翻译自 RECURRENT NEURAL NETWORKS T ...

  9. Python学习--04条件控制与循环结构

    Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...

随机推荐

  1. 解决WIFI驱动RTL8188无法在rk3168平板Android4.2启动wifi的问题

    http://blog.csdn.net/morixinguan/article/details/75228335 上一篇博文能把ko编译出来,非常兴奋的想,这一定是没问题了,结果删除原先的ko后,加 ...

  2. python︱用pyodbc连接数据库

    直接连接数据库和创建一个游标(cursor) 数据查询(SQL语句为 select -from..where) 1.pyodbc连接 import pyodbc cnxn = pyodbc.conne ...

  3. python常用模块之json、pickle模块

    python常用模块之json.pickle模块 什么是序列化? 序列化就是把内存里的数据类型转换成字符,以便其能存储到硬盘或者通过网络进行传输,因为硬盘或网络传输时只接受bytes. 为什么要序列化 ...

  4. C#中PadLeft和PadRight小知识点

    当我们显示字符串数据时,有时候我们需要考虑数据的排列美观. 比如一些人名和一些编号,我们想让他们整齐对齐显示等. C# String类提供了2种操作方法: String.PadLeft(int tot ...

  5. Spring之基本关键策略

    目的 为了简化Java开发. 策略 基于POJO(普通Java类)的轻量级和最小侵入性编程: 通过依赖注入(DI)和面向接口实现松耦合: 基于切面和惯例进行声明式编程: 通过切面和模板减少样板式代码. ...

  6. xcopy 提示文件 还是目录

    xcopy /y a.jpg .\pics\b.jpg很多次,但xcopy总是问我“文件名还是目录名”gg了一下,发现答案可以这样通过管道来做echo f | xcopy /y a.jpg .\pic ...

  7. C的动态链表建立

    运用到的函数为: 动态内存分配函数malloc()              比如:char *name=(char *)malloc(20);  相当与c++的new关键字 动态内存释放函数free ...

  8. bzoj 1858 序列操作

    bzoj 1858 序列操作 带有随机多个区间单值覆盖的区间操作题,可考虑用珂朵莉树解决. #include<bits/stdc++.h> using namespace std; #de ...

  9. Byte.parseByte(String s,int radix)的解释

    1. 由 基本数据型态转换成 String String 类别中已经提供了将基本数据型态转换成 String 的 static 方法 也就是 String.valueOf() 这个参数多载的方法 有下 ...

  10. PHP的网站主要攻击方式有哪些

    1.命令注入(Command Injection) 2.eval注入(Eval Injection) 3.客户端脚本攻击(Script Insertion) 4.跨网站脚本攻击(Cross Site ...