Ruby基础语法

Ruby 是一种动态、反射和面向对象的编程语言,它以其简洁的语法和强大的功能而受到许多开发者的喜爱。以下是 Ruby 语言的一些基本语法:

1. 打印输出

ruby 复制代码
puts "Hello, Ruby!"

变量赋值

ruby 复制代码
x = 10
name = "John"

2. 数据类型

Ruby 有多种基本数据类型,包括整数、浮点数、字符串、数组、哈希(Hash)和符号(Symbol)。

ruby 复制代码
number = 42          # 整数
float_number = 3.14   # 浮点数
greeting = "Hello"    # 字符串
names = ["John", "Jane", "Foo"]  # 数组
person = { name: "John", age: 30 }  # 哈希
id = :user_id          # 符号

3. 条件语句

ruby 复制代码
age = 20
if age > 18
  puts "You are an adult."
elsif age == 18
  puts "You are an adult."
else
  puts "You are a minor."
end

4. 循环

Ruby 中的循环包括 whileuntil 循环。

复制代码

ruby

ruby 复制代码
i = 0
while i < 5
  puts i
  i += 1
end

i = 0
until i >= 5
  puts i
  i += 1
end

5. 数组和迭代

ruby 复制代码
numbers = [1, 2, 3, 4, 5]
numbers.each do |number|
  puts number
end

6. 哈希(Hash)

ruby 复制代码
person = { name: "John", age: 30 }
puts person[:name]  # 输出 John

7. 方法定义

ruby 复制代码
def greet(name)
  puts "Hello, #{name}!"
end

greet("John")

8. 类和对象

ruby 复制代码
class Person
  attr_accessor :name, :age

  def initialize(name, age)
    @name = name
    @age = age
  end

  def greet
    puts "Hello, my name is #{@name} and I am #{@age} years old."
  end
end

person = Person.new("John", 30)
person.greet

9. 模块和混入

ruby 复制代码
module Greeting
  def say_hello
    puts "Hello, world!"
  end
end

class Person
  include Greeting
end

person = Person.new
person.say_hello

10. 块(Block)

ruby 复制代码
[1, 2, 3, 4].each { |number| puts number * 2 }

11. 文件操作

ruby 复制代码
File.open("file.txt", "r") do |file|
  while line = file.gets
    puts line
  end
end

Ruby 的语法简洁而强大,非常适合快速开发。

相关推荐
PieroPc22 分钟前
Python 写的 智慧记 进销存 辅助 程序 导入导出 excel 可打印
开发语言·python·excel
2401_857439693 小时前
SSM 架构下 Vue 电脑测评系统:为电脑性能评估赋能
开发语言·php
SoraLuna3 小时前
「Mac畅玩鸿蒙与硬件47」UI互动应用篇24 - 虚拟音乐控制台
开发语言·macos·ui·华为·harmonyos
向前看-3 小时前
验证码机制
前端·后端
xlsw_3 小时前
java全栈day20--Web后端实战(Mybatis基础2)
java·开发语言·mybatis
Dream_Snowar4 小时前
速通Python 第三节
开发语言·python
超爱吃士力架5 小时前
邀请逻辑
java·linux·后端
高山我梦口香糖5 小时前
[react]searchParams转普通对象
开发语言·前端·javascript
信号处理学渣6 小时前
matlab画图,选择性显示legend标签
开发语言·matlab
红龙创客6 小时前
某狐畅游24校招-C++开发岗笔试(单选题)
开发语言·c++