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程序员学WEB前端(3)-HTML(3)-表单嵌套-Sublime
转载请注明出处:http://blog.csdn.net/iwanghang/article/details/76522586觉得博文有用,请点赞,请评论,请关注,谢谢!~ 表单嵌套: <!DO ...
- flowable EngineConfiguration的实现分析(2)
EngineConfiguration的实现类是一个抽象类:AbstractEngineConfiguration 一.引擎配置的分类 继承 AbsractEngineConfiguration的子类 ...
- Android内存优化(四)解析Memory Monitor、Allocation Tracker和Heap Dump
相关文章 Android性能优化系列 Java虚拟机系列 前言 要想做好内存优化工作,就要掌握两大部分的知识,一部分是知道并理解内存优化相关的原理,另一部分就是善于运用内存分析的工具.本篇就来介绍内存 ...
- XCOde 5 的界面布局一些新特性
1.问题 •在iOS程序中,大部分视图控制器都包含了大量的代码用于设置UI布局,设置控件的水平或垂直位置,以确保组件在不同版本的iOS中都能得到合理的布局 •甚至有些程序员希望在不同的设备使用相同的视 ...
- Git详解之七 自定义Git
以下内容转载自:http://www.open-open.com/lib/view/open1328070404827.html自定义 Git 到目前为止,我阐述了 Git 基本的运作机制和使用方式, ...
- 全球常用NTP服务器地址及IP列表ntpdate
pool.ntp.org是一组授时服务器虚拟集群,在全球有3000多台服务器,只需要这样写就行了,具体哪台服务器提供服务无需关心. time.windows.com 微软 asia.pool.nt ...
- 大规模向量相似度计算方法(Google在07年发表的文章)
转载请注明出处:http://www.cnblogs.com/zz-boy/p/3648878.html 更多精彩文章在:http://www.cnblogs.com/zz-boy/ 最近看了Goog ...
- 在父容器div中图片下方有一条空隙问题
问题:<div><img src="mm1.jpg"></div> 然后,表现就是一张图片呈现,类似下面这样: 恩,看上去很正常,一切都是理所当 ...
- Thread和Runable实现多线程
分析两种实现多线程的方式:Thread类和Runnable接口 写一个程序,模拟4个售票窗口共同卖100张火车票的程序. 1:使用继承Thread类方式实现(). 2:使用实现Runnable接口方式 ...
- test20181029 思考熊的马拉松
题意 思考熊的马拉松 问题描述 今年,n只思考熊参加了校园马拉松比赛.马拉松的赛道是环形的,每圈的长度是A,完成比赛需要跑L圈. 比赛中,甲领先乙很长距离,绕过一圈或多圈后从后面追上了乙的现象叫做&q ...