ruby基礎文法
2772 ワード
先発:個人ブログ、更新&誤り訂正&返信
異なる言語を勉強して、よくそれらの基礎文法を混同して、例えばifの後ろに()があるかどうか、後ろがthenなのか、それとも{、終わりがendなのか、それとも}なのか.
このようなことは技術的な含有量がなく、面白くないが、流暢度に大きく影響しているので、今回はruby文法を見て、基礎文法をメモして、後で調べるのに便利にすることにした.
コードはここに置いてありますが、現在はrubyしかありません.後で別の言語を使うときに続々と追加します.
内容は以下の通り、最も基本的な使い方で、必要に応じて一目でわかります.
長期的にプロジェクトの協力機会の紹介を歓迎して、プロジェクトの収入の10%は紹介者に感謝します.新浪微博:@冷鏡,QQ:908789432.
異なる言語を勉強して、よくそれらの基礎文法を混同して、例えばifの後ろに()があるかどうか、後ろがthenなのか、それとも{、終わりがendなのか、それとも}なのか.
このようなことは技術的な含有量がなく、面白くないが、流暢度に大きく影響しているので、今回はruby文法を見て、基礎文法をメモして、後で調べるのに便利にすることにした.
コードはここに置いてありますが、現在はrubyしかありません.後で別の言語を使うときに続々と追加します.
内容は以下の通り、最も基本的な使い方で、必要に応じて一目でわかります.
# :《Ruby 》 、
# ,
CHANG_LIANG = 1
bian_liang = 2
bian_liang = "2"#
##
#if
if 2 > 1 then
#
elsif 2>2 then
#
else
#
end
#if
puts "if " if 2 > 1
#unless
unless 2 > 1 then
#
else
#
end
#case
case 1+1
when 2 then
#
when 3 then
#
else
#
end
##
#while
while 1>2
#
end
#until
until 1<2
#
end
#for
for i in (1..3)
#
end
#foreach
(1..3).each do |i|
# break next ,next continue
end
##
module MyModule#
#
class MyClass#
attr_accessor :myAttr#
def initialize
@myAttr2 = "@ "
end
public# public/protected/private
def myMethod#
puts " " + myAttr + @myAttr2
end
end
#
class MySubClass < MyClass
end
#
def moduleMethod
puts "MyModule "
end
end# end
#
myClass = MyModule::MyClass.new#
myClass.myAttr = " "#
myClass.myMethod#
#
def myClass.newMethod
puts " "
end
myClass.newMethod
#
load 'ruby_another_module.rb'
anotherClass = AnotherModule::AnotherClass.new#
anotherClass.print#
#
class UseMixin
include MyModule
extend MyModule
end
UseMixin.new.moduleMethod#include ,
UseMixin.moduleMethod#extend ,
##
def blockMethod# , yield
yield
end
blockMethod {puts " "}
#
def blockMethodWithParam(arg, &b)#
b.call arg
end
block = Proc.new{|x| puts x}#
blockMethodWithParam(" ", &block)#
blockMethodWithParam(" "){|x| puts x}
##
begin
#
rescue Error# catch
#
retry#
ensure
# finally,
end
##
#
a=123_456#
b=0b101010#
c=0123#
d=0xaa#
e=?a#ascii
puts d
#
#
str = "hello, world"
str = %{ , "world"}#
str[0] = " "
puts str
#
#
(1..3).each{|a| puts a}
#
[1,2,3].each{|a| puts a}
#
map = {" "=>" ", " "=>" "}
puts map[" "]
#
"ab12cd".scan(/\d/){|m| puts m}#
puts /\d/.match("ab12cd")[0]#match
長期的にプロジェクトの協力機会の紹介を歓迎して、プロジェクトの収入の10%は紹介者に感謝します.新浪微博:@冷鏡,QQ:908789432.