`
leeyouser
  • 浏览: 24933 次
  • 性别: Icon_minigender_1
  • 来自: 南京
文章分类
社区版块
存档分类
最新评论

jruby sort函数与cruby sort函数的区别

阅读更多
1.实现算法不一样,jruby sort函数的排序算法采用的是插入排序而cruby则是快速排序
2.参数block的区别(最主要区别):
  sort {|x,y| <表达式>}
  第一区别:x,y的赋值不一样,cruby中,x,y的值是按照下标序列赋值,而jruby中,按照下标序列相反顺序赋值
  第二区别:根据<表达式>返回的值进行的操作不同:
            cruby下,当<表达式>返回的值不等于-1时进行序列位置调整;(不稳定排序)
            jruby下,当<表达式>返回的值不等于1时进行序列位置调整。

test.rb
arr = [11,2,34,1,5].sort do |x,y| 
  p "x = " + x.to_s + "  " +"y = " +y.to_s
  x==2?1:x<=>y
end
p arr


C:\Documents and Settings\someone\桌面>jruby test.rb
JRuby limited openssl loaded. http://jruby.org/openssl
gem install jruby-openssl for full support.
"x = 2  y = 11"
"x = 34  y = 2"
"x = 1  y = 34"
"x = 1  y = 2"
"x = 1  y = 11"
"x = 5  y = 34"
"x = 5  y = 2"
[1, 11, 2, 5, 34]

C:\Documents and Settings\someone\桌面>ruby test.rb
"x = 11  y = 34"
"x = 34  y = 5"
"x = 11  y = 5"
"x = 2  y = 11"
"x = 1  y = 11"
"x = 2  y = 34"
"x = 5  y = 1"
[1, 5, 11, 34, 2]


可以使用sort!函数来查看排序过程。
分享到:
评论

相关推荐

    如何安装与配置JRuby

    **JRuby 安装与配置指南** JRuby 是一个基于 Java 平台的 Ruby 实现,它允许开发者利用 Ruby 语言的优势同时享受 Java 生态系统的强大功能。在本文中,我们将详细探讨如何安装和配置 JRuby,特别是针对 JRuby 1.1.2...

    jruby1.7.8版本呢

    - **与 Java 库的无缝集成**:JRuby 可以直接调用 Java 类库,使开发者可以利用 Java 生态系统中的丰富资源。 - **线程安全**:得益于 JVM 的线程模型,JRuby 具有良好的多线程支持。 **2. JRuby 1.7.8 版本特性** ...

    org.jruby.rar

    标题 "org.jruby.rar" 暗示我们正在讨论一个与 JRuby 相关的压缩文件,其中可能包含了 JRuby 的源代码、库文件或者其他相关资源。JRuby 是一种 Java 实现的 Ruby 解释器,它允许 Ruby 代码在 JVM(Java 虚拟机)上...

    jruby-src-1.0

    JRuby是一种实现Ruby编程语言的Java版本,它允许在Java平台上运行Ruby代码,同时也支持与Java应用程序进行无缝集成。这个压缩包“jruby-src-1.0.zip”包含了JRuby 1.0版本的所有源代码文件,对于开发者来说,这是一...

    JRuby在Java测试中的应用

    - **块与迭代器**:Ruby中特有的构造,用于循环和函数式编程。 - **面向对象**:Ruby的核心是面向对象编程,几乎所有的操作都可以通过对象和消息传递来完成。 #### JRuby与Java的交互 - **引入Java类库**:通过`...

    Ruby-JRuby一个Ruby语言的Java实现

    在JRuby中,你可以直接调用Java类库,就像调用Ruby内置函数一样简单。这对于集成Java框架,如Spring或Hibernate,或者利用Java的并发和多线程能力,都是极大的便利。同样,Java开发者也可以轻松地调用Ruby代码,实现...

    jruby-bin-1.3.1.zip

    - **与Java集成**:使用`jruby -S gem install jruby-stdlib`安装stdlib库,然后可以使用Java的`ScriptEngineManager`来执行Ruby代码。 总之,"jruby-bin-1.3.1.zip"是一个方便开发者进行JRuby语言研发的工具包,...

    jruby_windows1.7and bin1.7

    JRuby是面向Ruby、基于Java虚拟机(JVM)的一种解释程序,它结合了Ruby语言的简易性和功能强大的JVM的执行机制,包括与Java库 全面集成。Rails彻底加快及简化了Web应用的开发,不过它让人觉得不够成熟,特别是在高端...

    jRuby On Rails WEB2.0

    《jRuby on Rails WEB2.0》是一部由Ola Bini撰写的书籍,深入探讨了如何将Ruby on Rails这一敏捷开源框架与Java平台相结合,以构建高效、灵活的Web 2.0应用。作为JRuby项目的领头人和核心开发者,Ola Bini以其丰富的...

    jruby-bin-0.9.0.tar.gz

    7. **安装与运行**:解压"jruby-bin-0.9.0.tar.gz"后,用户需要将JRUBY的bin目录添加到系统路径,然后就可以通过命令行运行Ruby代码或执行JRuby特定的命令,如`jruby`或`jirb`(JRuby交互式解释器)。 8. **开发...

    jruby_windows_1_6_4安装文件

    2. **与Java集成**:JRuby提供了对Java类库的直接访问,使得Ruby开发者能够利用Java强大的企业级框架和库,如Spring、Hibernate等。 3. **性能提升**:由于JRuby运行在JVM上,它可以利用JVM的优化技术,如Just-In-...

    如何监控JRuby脚本的执行

    在IT行业中,尤其是在Java与Ruby混合开发的场景中,JRuby是一个重要的工具,它允许开发者在Java平台上运行Ruby代码。由于JRuby是基于JVM(Java Virtual Machine)的,因此可以利用Java生态中的各种工具来对其进行...

    jruby-1.3.1.jar

    jruby-1.3.1.jar包 解决org.jruby.exceptions.JumpException 等报错

    jruby-1.5.5+OperaWatir+RSpec

    JRuby 1.5.5 是该实现的一个早期版本,发布于 2010 年左右,提供了与标准 Ruby 1.8.x 相当的功能。它提高了性能,支持多线程,并允许开发者利用 Java 的强大功能,如内存管理和企业级框架,同时保持 Ruby 的简洁语法...

    jruby开发----jar

    jruby与java使用开发,听说jruby能是swing的调用变为更简单

    JRuby+Swing是开发人员钟情的选择

    1. **稳定性与测试**:JRuby 作为成熟的开源项目,具有高度的稳定性和经过充分测试的代码库。 2. **社区与支持**:JRuby 有强大的社区支持,开发者可以获取到丰富的资源和帮助。 3. **文档丰富**:JRuby 有详尽的...

    jruby-core-1.7.12.zip

    标题 "jruby-core-1.7.12.zip" 提供的是 JRuby 的核心库版本 1.7.12,这是一个将 Java 虚拟机(JVM)与 Ruby 语言结合的开源实现。JRuby 允许开发者在 Java 平台上运行 Ruby 代码,同时利用 Java 生态系统的强大功能...

    jruby-complete-1.7.19.jar

    jruby-complete-1.7.19.jar,java版本的ruby解析器

Global site tag (gtag.js) - Google Analytics