Rubyベース

4278 ワード

従来の学習方式では、プログラミング言語を学ぶたびに環境を構成しなければならない.したがって,Rubyプログラムを正式に書く前に環境を構成すべきである.ここを見て、ここを見て、ここを見て
Hello,World!
環境をインストールして、Hello Worldを書きましょう!vim HelloWorld.rb # ruby
print "Hello,World!
"

実行プログラムruby HelloWorld.rbの場合、端末表示
Hello,World!

有木有は簡単で、これから私たちは正式にルビーの旅を始めます.
メソッドの呼び出し
Rubyはメソッドの呼び出し時に省略可能()
irb(main):001:0>  print "Hello,","Ruby",".","
" Hello,Ruby. => nil irb(main):002:0>

printメソッドは結果を直接出力し、改行が必要な場合は末尾に「」を付ける必要があります.
putsメソッドは、出力結果の末尾に必ず改行文字を出力します.
pメソッドは、結果を出力すると、数値結果と文字列結果が異なる形式で出力されます.しかしprintとputsメソッドは,数値1と文字列「1」を出力すると,いずれも単純な1となる.
eg:
irb(main):002:0> p "100"
"100"
=> "100"
irb(main):003:0> p 100
100

数値表示と計算
Rubyは平方根,sinなどの数学関数計算を行う.数学の関数を使用する場合、関数の前にMathを付けなければならない.を選択します.関数の前にMathを付けたくない場合.の場合、include Mathというコードが必要です.
irb(main):007:0> Math.sqrt(10000)
=> 100.0

変数#ヘンスウ#"size = #{area}
"
は全体の文字列です.#{area}メソッドはareaの値を文字列に埋め込むことを示す
x=10
y=20
z=30
area =(x*x+y*y+z*z)*2
print area,"
" print "size = #{area}

コメント
1行コメント:#
#     

複数行コメント:=beginで始まり、=endで終わります.
=begin
 
 
 
 
=end

せいぎょぶん
  • 条件判断:if~then~end
  • if    then
                  
    else 
                   
    end
    

    eg:
    a = 2
    if a >= 1 
        print "bigger
    " else print "smaller
    " end
  • while文
  • while      do 
               
    end
    
  • timesメソッド
  •     .times do 
               
    end
    

    eg:
    5.times do
        print “hello,world!
    ” end

    便利な相手
  • 配列Rubyにおける配列の大きさは,実際の状況に応じて自動的に調整される,すなわち動的配列である.Ruby配列は、複数の異なるオブジェクトの混合保存をサポートします.
  • mixed = [1,"AAA",2,"BB",3]
    

    配列のサイズ
    mixed.size => 5
    

    配列の循環Rubyでは、配列全体を容易にするeach法が提供され、eachの後にあるdo~endの間の部分をブロック(block)と呼び、ブロックの開始部分を| |と呼ぶ.eachメソッドは配列要素を1つずつ取り出し、指定した| |に値を割り当てると、ブロック内のメソッドはこの変数にアクセスすることで、配列をループする操作を実現することができます.
      .each do |  |        end
    

    eg:
    names = ["zhao","qian","sun","li"]
    names.each do |n| 
        puts n
    end
    
  • ハッシュハッシュ(hash)はプログラムでよく使われる容器である.ハッシュは、キー値ペア(key-value pair)のデータ構造です.Rubyでは、通常、対応するオブジェクトを保存するために文字列またはシンボル(symbol)をキーとして使用します.
  • シンボル(symbol)
  • は軽量級の文字列と理解でき、オブジェクト
  • でもある.
  • は、一般に名称ラベルとして用いる、方法等を表すオブジェクト名
  • として用いられる.
  • は、ハッシュのような単純に「等しいか否か」を判断する処理において効率が高い
  • である.
  • の作成方法は、ラベルの先頭に:を付けるだけで
  • になります.

    シンボルと文字列間の相互変換
    symbol.to_s       #         
    string.to_sym      #         
    

    ハッシュの作成方法は配列とあまり差がありませんが、{}が使用されます.ハッシュ定義には2つの方法があります.eg:
    address = {name: "nantongdajie",id:"145",info:"heu"}
    student = {:name=>"tars",:id=>30}
    address.each do |key,value| 
        puts "#{key}:#{value}"
    end
    student.each do |key,value| 
        puts "#{key}:#{value}"
    end
    

    実行結果
    hash_demo.rb
    name:nantongdajie
    id:145
    info:heu
    name:tars
    id:30
    

    Tips
    Rubyのすべてのデータはオブジェクトです.
    ppメソッド
    Rubyは、pの方法に加えて、同様の作用を有する方法ppを提供する.ppは英語pretty printの略である.eg:
    v = [{ 
        key00: "value01", 
        key01: "value02", 
        key02: "value03"
    }]
    p v
    pp v
    

    pメソッドとは異なり、ppメソッドはオブジェクトの結果を出力する際に、より分かりやすいように改行して出力結果を調整します.
    ループ文、メソッド、およびその主な用途
    方法
    主な用途
    timesメソッド
    サイクル数の決定
    for文
    オブジェクトから元素を取り出すときに使う(each構文糖)
    while文
    ループ条件を自由に指定したい場合に使用
    until文
    while文を使用してループ条件がわかりにくくなった場合に使用
    eachメソッド
    オブジェクトから要素を取り出すときに使用
    loopメソッド
    サイクル数制限なしで使用
    do~end & {~}
  • プログラムは跨行時用:do~end
  • プログラムは1行の書く時に使います:{~}
  • まずここまで整理して、道はまだ長いので、勉強しなければなりません.