Ruby在线运行

版本:

所属目录
点击了解高性能代码运行API
运行结果
教程手册
代码仓库
极速运行
终端运行
图形+终端

                        
以下是用户最新保存的代码
改变变量值 发布于:2023-11-12 13:51 用于修改加入类的方法,动态元编程。 发布于:2023-11-12 11:08 Ruby in inheritance 发布于:2023-11-11 23:52 Object and Encapsulation 发布于:2023-10-25 18:02 Ruby数组,例子。 发布于:2023-10-12 21:33 If condition 发布于:2023-10-03 17:01 测试 基础概念 发布于:2023-09-17 16:22 java属性set or build 发布于:2023-05-24 15:48 一所文档转java字段 发布于:2023-04-11 15:22 文档转sql 发布于:2023-12-02 18:47 特殊供应商数据解析--江涛 发布于:2023-02-28 16:44 # 测试ruby代码 发布于:2023-02-15 17:08 化合物临时表插入 发布于:2023-01-30 11:16 dj最短路算法 发布于:2022-11-03 14:09 用嵌套for和嵌套while打印九九乘法表 发布于:2022-09-28 10:36 掌握ruby中的实例变量与类变量 发布于:2022-09-27 17:11 Ruby允许用户在定义方法时以等号(=)结束。 以及两种格式化指示符的用法 发布于:2022-09-14 10:09 测试ruby简易加密 发布于:2022-09-13 20:51 枚举转json 发布于:2023-04-11 14:49 多行转逗号带字符串 发布于:2023-02-17 14:57 多行转逗号 发布于:2023-02-14 15:25 sql表结构转文档 发布于:2022-03-31 13:17 医学影像三维重建系统 发布于:2022-01-17 23:39 医学影像三维重建系统 发布于:2022-01-17 23:38 医学影像三维重建系统 发布于:2022-01-17 23:36 ruby md5+base64加密 发布于:2022-01-11 22:01 gitlab job trace 发布于:2021-03-28 13:26 until语句 发布于:2020-07-08 16:10 主成分分析 发布于:2020-06-20 10:38 Ruby test 1. 类定义,对象初始化,方法调用。 发布于:2020-06-05 09:55 [更多]
显示目录

语法



学习嵌入式的绝佳套件,esp8266开源小电视成品,比自己去买开发板+屏幕还要便宜,省去了焊接不当搞坏的风险。 蜂鸣版+触控升级仅36元,更强的硬件、价格全网最低。

点击购买 固件广场

Ruby 语法

让我们编写一个简单的 Ruby 程序。所有的 Ruby 文件扩展名都是 .rb。所以,把下面的源代码放在 test.rb 文件中。

实例

#!/usr/bin/ruby -w  
puts "Hello, Ruby!";

在这里,假设您的 /usr/bin 目录下已经有可用的 Ruby 解释器。现在,尝试运行这个程序,如下所示:

$ ruby test.rb
`

这将会产生下面的结果:

Hello, Ruby!
`

您已经看到了一个简单的 Ruby 程序,现在让我们看看一些 Ruby 语法相关的基本概念:

Ruby 程序中的空白

在 Ruby 代码中的空白字符,如空格和制表符一般会被忽略,除非当它们出现在字符串中时才不会被忽略。然而,有时候它们用于解释模棱两可的语句。当启用 -w 选项时,这种解释会产生警告。

实例:

a + b 被解释为 a+b (这是一个局部变量)
a  +b 被解释为 a(+b) (这是一个方法调用)
`

Ruby 程序中的行尾

Ruby 把分号和换行符解释为语句的结尾。但是,如果 Ruby 在行尾遇到运算符,比如 +、- 或反斜杠,它们表示一个语句的延续。

Ruby 标识符

标识符是变量、常量和方法的名称。Ruby 标识符是大小写敏感的。这意味着 Ram 和 RAM 在 Ruby 中是两个不同的标识符。

Ruby 标识符的名称可以包含字母、数字和下划线字符( _ )。

保留字

下表列出了 Ruby 中的保留字。这些保留字不能作为常量或变量的名称。但是,它们可以作为方法名。

BEGIN do next then
END else nil true
alias elsif not undef
and end or unless
begin ensure redo until
break false rescue when
case for retry while
class if return while
def in self FILE
defined? module super LINE

Ruby 中的 Here Document

"Here Document" 是指建立多行字符串。在 << 之后,您可以指定一个字符串或标识符来终止字符串,且当前行之后直到终止符为止的所有行是字符串的值。

如果终止符用引号括起,引号的类型决定了面向行的字符串类型。请注意<< 和终止符之间必须没有空格。

下面是不同的实例:

#!/usr/bin/ruby -w
# -*- coding : utf-8 -*-

print <<EOF
    这是第一种方式创建here document 。
    多行字符串。
EOF

print <<"EOF";                # 与上面相同
    这是第二种方式创建here document 。
    多行字符串。
EOF

print <<`EOC`                 # 执行命令
    echo hi there
    echo lo there
EOC

print <<"foo", <<"bar"          # 您可以把它们进行堆叠
    I said foo.
foo
    I said bar.
bar

这将产生以下结果:

 This is the first way of creating
    her document ie. multiple line string.
    This is the second way of creating
    her document ie. multiple line string.
hi there
lo there
        I said foo.
        I said bar.

Ruby BEGIN 语句

语法

BEGIN {
   code
}

声明 code 会在程序运行之前被调用。

实例

#!/usr/bin/ruby

puts "This is main Ruby Program"

BEGIN {
   puts "Initializing Ruby Program"
}

这将产生以下结果:

Initializing Ruby Program
This is main Ruby Program

Ruby END 语句

语法

END {
   code
}

声明 code 会在程序的结尾被调用。

实例

#!/usr/bin/ruby

puts "This is main Ruby Program"

END {
   puts "Terminating Ruby Program"
}
BEGIN {
   puts "Initializing Ruby Program"
}

这将产生以下结果:

Initializing Ruby Program
This is main Ruby Program
Terminating Ruby Program

Ruby 注释

注释会对 Ruby 解释器隐藏一行,或者一行的一部分,或者若干行。您可以在行首使用字符( # ):

# 我是注释,请忽略我。

或者,注释可以跟着语句或表达式的同一行的后面:

name = "Madisetti" # 这也是注释

您可以注释多行,如下所示:

# 这是注释。
# 这也是注释。
# 这也是注释。
# 这还是注释。

下面是另一种形式。这种块注释会对解释器隐藏 =begin/=end 之间的行:

=begin
这是注释。
这也是注释。
这也是注释。
这还是注释。
=end
由JSRUN为你提供的Ruby在线运行、在线编译工具
        JSRUN提供的Ruby 在线运行,Ruby 在线运行工具,基于linux操作系统环境提供线上编译和线上运行,具有运行快速,运行结果与常用开发、生产环境保持一致的特点。
yout