Julia - 循环
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 - 循环的更多相关文章
- 如果你喜欢python,那你迟早会喜欢上julia的!
你可曾想过有那么一门语言: 这门语言能够有C语言一样的速度,Ruby一样得活力(dynamism).像homoiconic一样的语言,它像Lisp一样有宏,但是也像Matlab一样有显而易见.熟悉的数 ...
- 在天河二号上对比Julia,Python和R语言
Julia是一款高级高效为技术计算(technical computing)而设计的编程语言,其语法与其他计算环境类似.其为分布式计算和并行所设计,最知名的地方在于其接近C语言的高效率. 按开发者的话 ...
- 初试 Julia 语言 (转)
原文地址: https://blog.csdn.net/seekiu/article/details/47397067 随着 Julia 1.0版本的推出,人工智能圈子比较炸锅, 好像这门小众语言要 ...
- Julia体验 语言基础
以前听说过Julia,不过那时候官网还处于时不时宕机状态,最近Julia发布了1.0 released版本到处都是它的资讯,官网良心自带简体中文,趁着热度我也来试试,顺便聊记一二. 关于Julia J ...
- LiveScript 流程控制、循环以及列表推导式
The LiveScript Book The LiveScript Book Generators and Yield 你可以在你的 LiveScript 代码中使用 Ecmascript ...
- 破阵九解:Node和浏览器之事件循环/任务队列/异步顺序/数据结构
前言 本文内容比较长,请见谅.如有评议,还请评论区指点,谢谢大家! >> 目录 开门见山:Node和浏览器的异步执行顺序问题 两种环境下的宏任务和微任务(macrotask &&a ...
- 【.net 深呼吸】细说CodeDom(8):分支与循环
有人会问,为啥 CodeDom 不会生成 switch 语句,为啥没生成 while 语句之类.要注意,CodeDom只关心代码逻辑,而不是语法,语法是给写代码的人用的.如果用.net的“反编译”工具 ...
- Recurrent Neural Network系列1--RNN(循环神经网络)概述
作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 本文翻译自 RECURRENT NEURAL NETWORKS T ...
- Python学习--04条件控制与循环结构
Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...
随机推荐
- Android敏捷开发、CI(持续集成)探究
比较老的几篇文章,依旧有学习价值 http://blog.csdn.net/baodinglaolang/article/details/9530695 http://blog.csdn.net/ba ...
- VMWare的共享文件的安装指南
引言:笔者这几天基于CentOS 7的精简版按照了一个虚拟机,悲催的是没有图形界面,但是非常需要共享文件的工作,在宿主机以及虚拟机之间实现文件共享,本文将描述如何实现此操作. VMWare菜单按照VM ...
- iOS NSRunloop
什么是Runloop Runloop即运行循环.为什么你的APP放在那里不去动它,在某个时间点去操作它,它还会给你反馈.就是因为Runloop的存在. 总结一下,因为Runloop的存在,保证你的程序 ...
- linux下端口被占用
1.查看端口 netstat -ano 参数含义: -a, --all 显示监听或非监听状态的接口 Show both listening and non-listening (for TCP t ...
- How to input the newline in Numbers of Mac?
newline control+enter
- VS2013 tips
1.创建一个connection时会自动产生一个localdb数据库文件,可以通过Server Explorer窗口查看这个localDB,注意,是Server Explorer窗口,而不是SQL S ...
- 新的开源java反汇编程序Procyon
wiki:https://bitbucket.org/mstrobel/procyon/wiki/Java%20Decompiler 由于jd好多年没更新了,今天找到这个新的开源反汇编,很不错 分享一 ...
- PCA最小平方误差理论推导
PCA最小平方误差理论推导 PCA求解其实是寻找最佳投影方向,即多个方向的标准正交基构成一个超平面. 理论思想:在高维空间中,我们实际上是要找到一个d维超平面,使得数据点到这个超平面的距离平方和最小 ...
- SQL Server 为存储过程添加预定设置注释代码
一个优秀的项目最少不了的是代码注释,兴许你是代码高手入目既知道该段代码主要功能是什么,但日子长了,记的东西多了,即时再熟悉的代码也渐渐的有点不认 识它,所以养成良好的写注释的习惯,对于自己对于他人都是 ...
- PAT 1006 换个格式输出 C语言
让我们用字母B来表示“百”.字母S表示“十”,用“12...n”来表示个位数字n(<10),换个格式来输出任一个不超过3位的正整数.例如234应该被输出为BBSSS1234,因为它有2个“百”. ...