【Ruby】语法笔记一

  • 接受用户输入

first_name = gets.chomp
  • 首字母大写

first_name.capitalize!
  • 字母变大写

first_name.upcase!
  • 字母变小写

first_name.downcase!
  • 多行输出

print <<EOF
   # 多行输出
EOF
  • 注释

# 我是注释
  • 变量获取

#{first_name}
  • 变量

    • 全局变量 $

    • 类变量 @@

    • 方法变量 @

    • 局部变量 小写字母或_

  • if/else

if a < b
    puts '1'
elsif b < a
    puts '2'
end        
class Classname
    def functionname(params)
        puts params
    end
end

class1 = Classname.new
class1.functionname('1')
  • unless

unless false
    print 'ok'
else
    print 'no'
end        
  • 是否包含字符

print 'puts'

user_input = gets.chomp

user_input.downcase!

if user_input.include?"s"
   print 'has s'
end
  • 替换字符

# s -> th
user_input.gsub!(/s/,"th")
  • 在字符串中输出变量值

puts 'okok #{user_input}'
  • while

counter = 1

while counter < 11
    puts counter
    counter = counter + 1
end
  • Until

counter = 1
until counter > 10
    print counter
    counter = counter + 1
end    
  • += 、 -= 、 *=、 /=

Some languages have the increment operators ++ and — (which also add or subtract 1 from a value), but Ruby does not

  • for循环

# 如果 1...10 包含1-9,如果 1..10 包含1-10

for num in 1...10
    puts num
end    
  • Loop Method

An iterator is just a Ruby method that repeatedly invokes a block of code.

i = 20
loop do
    i -= 1
    print "#{ i }"
    break if i <= 0
end    
  • Next

i = 20
loop do
  i -= 1
  next if i%2 != 0
  print "#{i}"
  break if i <= 0
end
  • 数组

my_array = [1,2,3,4,5]
  • The .each Iterator迭代器

numbers = [1, 2, 3, 4, 5]

# one way to loop
numbers.each { |item| puts item }

# another way to loop
numbers.each do |item|
  puts item
end
  • The .times Iterator 次数迭代器

10.times { print 'ok'})
  • Looping with ‘While’

num = 1

while num <= 50 do
    print num
    num += 1
end    
  • Looping with ‘Until’

num = 1
until num > 50 do
    print num
    num += 1
end    
  • Loop the Loop with Loop

num = 0

loop do
    num += 1
    print "Ruby!"
    break if num == 30
end    
  • The .split Method,

text.split(",")

puts "Text to search through: "
text = gets.chomp
puts "Word to redact"
redact = gets.chomp

words = text.split(" ")

words.each do |word|
    print word
end
    原文作者:丁一
    原文地址: https://segmentfault.com/a/1190000004112189
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞