美文网首页
Ruby学习总结

Ruby学习总结

作者: Funnyer | 来源:发表于2017-09-20 21:22 被阅读18次

    ruby的计算符合正常编程逻辑
    比如:

    2 + 6
    3 * 5
    3 + ( 40 / 4 )
    2**3   //2的3次方
    Math.sqrt(64) //开方
    

    Math是Ruby内建的数学模块。在Ruby中,模块提供了两种角色:一种角色是将类似的方法聚集在同一个“家族”名下。因此,Math也包括sin、tan这样的方法。第二种角色是一个圆点(dot),它标记了消息的接收者。什么是消息?在上面的例子中,sqrt(9)便是消息,它意味着调用sqrt方法取出9的平方根。

    ruby的函数:

    "Funny".reverse   //倒序排列
    "funny".le­ngth    //获取长度
    "funny" * 5       //五次拼接
    

    关于整数的反转不可以

    40.reverse
    

    整数包括固定长整数(Fixnum)与大数(Bignum)。Fixnum可表示系统平台上自然操作的数值范围(对32位机器是-230~230-1),而Bignum则表示比此范围更大的整数。

    而是需要先把整数转换成字符串再进行反转:

    40.to_s.erverse
    

    类似的函数:

    to_i   //转换成integer类型
    to_a   //转换成数组
    

    数组及数组相关的函数:

    [12, 47, 35].max  //数组取最大值
    .sort!            //排序,
    ticket = [14, 37, 18]
    poem['toas­t'] = 'hone­ydew' //数组替换
    poem.lines / bytes / chars.to_a.reve­rse //文本根据线/字节/字符,划分成数组后,反转,是数组的元素反转
    poem.lines / bytes / chars.to_a.reverse.join//转换后的数组反转后连接(join)成一个字符串
    poem.inclu­de?"my head"­//数组中是否包含某个元素
    poem.downcase//字符串中的所有转换成小写
    

    您可能会注意到,sort! 方法在其结尾有一个感叹号。 这只是表示我们打算让Ruby直接修改我们构建的同一个数组,而不是制作一个全新的排序副本。

    另外 upcase方法把字符串中的所有字母转换成大写。 downcase方法把字符串中的所有字母转换成小写。 swapcase方法也是转化字符串中字母的大小写,但是它会把大写字母换成小写,小写字母换成大写。

    字典(dictionary)hash

    books = {}//空字典
    books = {"Gravity's Rainbow"=>:splendid, "Funny"=>"so funny"}
    books.length //数量
    books.keys   //所有的key
    books.values //所有的value
    ratings = Hash.­new(0) //新建空Hash,注意区分大小写
    
    系统符号

    单词前加冒号,变成系统符号,它比字符串更节约内存,当在程序中多次使用一个单词时,建议使用系统符号。系统符号在计算机中只存储一次,而单词却要存储上千次。

    相关文章

      网友评论

          本文标题:Ruby学习总结

          本文链接:https://www.haomeiwen.com/subject/yinosxtx.html