`
ibelieve1314love
  • 浏览: 19128 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

Ruby中的并行赋值

 
阅读更多

最近开始学习Ruby,感觉Ruby有很多新奇而好玩的东西,非常的灵活。

就拿这个并行赋值来说,它可以在一行代码里,给很多变量同时赋不同的值。

num1, num2 = 1, 2

作用就是num1 = 1, num2=2 , 这个还比较好理解,一眼就能看出来,谁给谁赋值,赋的值是多少,

但下面这种情况,对我这样的初学者就有点迷惑了。

 

num1, num2 = num2, num1 + num2

一开始我的理解是 num1 = num2,这个执行完之后,再用新的num1来计算num2,但是

 

执行后的结果却不是我想的这样。

如果用上面num1,num2的初值1,2来计算的话,结果是num1 = 2, num2 = 3 。

也就是说num2还是用num1最初的值来计算的。

它相当于这样赋值的

 

tmp  = num1
num1 = num2
num2 = tmp + num2


所以从代码表现上来看,它给人的感觉真的是并行同时赋值的,结果可以证明。但它实际解释执行的时候,应该

 

是采取一种特殊的方法,比如我上面猜想的临时变量的方法,来顺序执行的。

 

分享到:
评论

相关推荐

    Ruby编程中的赋值相关操作

    在老版本的Ruby中,赋值语句的返回值是设置该属性的方法的返回值。在Ruby1.8中,赋值语句的值总是参数的值而方法的返回值将被丢掉。   class Test def val=(val) @val = val return 99 end end t = Test.new ...

    Ruby-ParallelRuby让并行处理简单和快速

    Parallel - Ruby让并行处理简单和快速

    Ruby-forkoffruby简单的并行处理

    forkoff - ruby简单的并行处理

    ruby中文资源大全

    在工作中,他希望有一种比 Perl 强大,比 Python 更面向对象的语言。从1993年2月,他开始设计一个全新的自己的语言,1994年12月发布了第一个 alpha版本,并且将这种新语言定名为Ruby(红宝石)。 本教程内含多部中文...

    Ruby:并行处理变得简单而快速-Ruby开发

    并行在并行进程(>使用所有CPU)或线程(>加速阻止操作)中运行任何代码。 最适合于地图缩减或例如并行下载/上传。 安装gem install parallel并行并行运行任何代码以并行处理(>使用所有CPU)或线程(>加速阻止操作...

    Ruby常见面试题.pdf

    2. Ruby中的变量声明和赋值规则是什么?请说明Ruby变量声明和赋值的语法。 3. Ruby中常用的数据类型有哪些?请列举几种常见的Ruby数据类型。 4. Ruby中如何进行条件判断和控制流程?请列举几种条件判断和控制流程的...

    Ruby中文文档.zip

    Ruby,一种简单快捷的面向对象(面向对象程序设计)脚本语言,在20世纪90年代由日本人松本行弘(Yukihiro Matsumoto)开发,遵守GPL协议和Ruby License。它的灵感与特性来自于 Perl、Smalltalk、Eiffel、Ada以及 Lisp ...

    ruby中并发并行与全局锁详解

    本文主要给大家介绍了关于ruby并发并行和全局锁的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。 并发和并行 在开发时,我们经常会接触到两个概念: 并发和并行,几乎所有谈到并发和...

    parallel_minion:Ruby中并行和异步处理的实用方法

    平行小兵 用一个奴才包装Ruby代码,使其在并行线程上运行。描述并行Minion允许您获取现有代码块并将其包装在minion中,以便它们可以在单独的线程中异步运行。 然后,仆从在需要时或在请求时将结果传回给调用方。 ...

    ruby中文教程,从基础到深入的让你学习ruby

    ruby中文教程,从基础到深入的让你学习ruby

    Ruby中文帮助文档

    Ruby中文文档.CHM 方便ruby or rails学习.

    Ruby中文教程及相关源代码

    Ruby中文教程及相关源代码 Ruby中文教程及相关源代码 Ruby中文教程及相关源代码

    ruby中英文api

    ruby中英文api 适合于初学者。 希望能给大家带来一些帮助

    ruby 中文文档 必备资料

    ruby 中文文档 必备资料 一定要下哦

    Ruby-HttpClient在Ruby中提供类似libwwwperlLWP的功能

    Http Client - 在Ruby中提供类似libwww-perl(LWP)的功能

    Ruby中文文档

    Ruby是一种功能强大的面向对象的脚本语言,她可以使您方便快捷地进行面向对象编程.Ruby使文本处理和系统管理变得简单,与Perl非常相似.一句话:简单明了,扩展性强,移植性好. Ruby的几大亮点: 语法简单 垃圾回收 ...

    ruby中文手册 chm

    ruby中文手册 chm 内容挺多的 包含: 1、Ruby用户指南 2、Ruby参考手册 3、RGSS入门教程 4、Programming Ruby的翻译

    ruby中文文档中心资料

    nb60_trans_old_zh_CN,ruby中文文档中心资料

Global site tag (gtag.js) - Google Analytics