当前位置: 首页 > 编程笔记 >

Ruby简洁学习笔记(一):字符串、数字、类和对象

通寂离
2023-03-14
本文向大家介绍Ruby简洁学习笔记(一):字符串、数字、类和对象,包括了Ruby简洁学习笔记(一):字符串、数字、类和对象的使用技巧和注意事项,需要的朋友参考一下

为了证明Ruby真的好用,hello world也能写的如此简洁:


puts 'hello world'

1.输入/输出


print('Enter your name')

name=gets()

puts("Hello #{name}")


注:Ruby是区分大小写的

2.String类

  puts("Hello #{name}")中的变量 name是内嵌在整个String里的,通过 #{ } 包裹进行内嵌求值,并用双引号""包裹(如果只是单引号''只会返回字面值)。不仅是变量,你甚至可以嵌入"\t""\n"和算数表达式。


puts "Hello #{showname}"

puts( "\n\t#{(1+2) * 3}\nGoodbye" )

3.if……then 语句


taxrate = 0.175 

print "Enter price (ex tax): "

s = gets

subtotal = s.to_f

if (subtotal < 0.0) then

    subtotal = 0.0 

end

tax = subtotal * taxrate

puts "Tax on $#{subtotal} is $#{tax}, so grand total is $#{subtotal+tax}"

1.每个if须有end与之对应,而then可选,除非它与if在同一行。
2.to_f()方法对值为浮点数的String返回浮点数本身,对于不能转化者返回 0.0

4.val、$val、@val的区别

val是局部变量,$val是全局变量,@val是实例变量

实例变量就相当于成员变量

5.如何定义一个class

看两段代码


class Dog   

    def set_name( aName )

        @myname = aName

    end

   

    def get_name

         return @myname

    end

    

    def talk

        return 'woof!'

    end

end


class Treasure

      def initialize( aName, aDescription )

        @name         = aName

        @description  = aDescription

      end

      

      def to_s # override default to_s method

           "The #{@name} Treasure is #{@description}\n"

      end

end

1.成员变量需用@标示
2.无参方法可以不加()
3.每个类要用end结束
4.默认有无参构造器initialize(),也可以重写带参数的initialize()

 类似资料:
  • 本文向大家介绍Ruby简洁学习笔记(二):类继承、属性、类变量,包括了Ruby简洁学习笔记(二):类继承、属性、类变量的使用技巧和注意事项,需要的朋友参考一下 1.如何声明一个子类 这样Thing类中的属性name,description都被Treasure继承 2.以下三种方式传入父类initialize方法的参数分别是什么? 第一种把参数中a,b,c传入父类initialize方法;第二种传入

  • 本文向大家介绍Ruby学习笔记一,包括了Ruby学习笔记一的使用技巧和注意事项,需要的朋友参考一下 笔记: Ruby会默认返回方法中的最后一个值。 如果需要返回多个值,可以用数组来实现。 可以通过强制声明return来返回值。 基础的输出方法是用puts(输出一行),print(直接打印)。 基础的输入方法是gets(读入一行,包含行尾的'\n',可以用chomp方法消除)。 纯粹的现象对象语言,

  • 本文向大家介绍Lua字符串库(string库)学习笔记,包括了Lua字符串库(string库)学习笔记的使用技巧和注意事项,需要的朋友参考一下 Lua 最强大的特性之一就是它的字符串处理能力,它支持字符格式化输出,具有可扩展的模式匹配查找功能,以及一些实用的字符操作,例如查询、截取、替换和删除等字符串操作,这些字符串操作函数都封装在一个名为 string 的模块里。 Lua 里的字符索引是从 1

  • 本文向大家介绍java学习笔记_关于字符串概述,包括了java学习笔记_关于字符串概述的使用技巧和注意事项,需要的朋友参考一下 一、String类 String类代表字符串,是由字符构成的一个序列。创建String对象的方法很简单,有以下几种: 1)用new来创建: 2) 不用new直接创建: 3) 可以用字符数组来创建一个字符串: String对象是不可变的,它们的值在创建后不能更改。Strin

  • 本文向大家介绍Ruby数组(Array)学习笔记,包括了Ruby数组(Array)学习笔记的使用技巧和注意事项,需要的朋友参考一下 1、数组的定义 Ruby中的数组是动态数组,存储的数据不用限定类型,数组的长度是根据存储需要动态扩展,所以,在进行数据定义的时候,只用用最简单的方式new一个Array对象就可以了,可以使用以下几种方式: 2、数组元素的访问 数组对象访问是通过数组下标进行的,下标从0

  • 本文向大家介绍Ruby中的Range对象学习笔记,包括了Ruby中的Range对象学习笔记的使用技巧和注意事项,需要的朋友参考一下 Range是范围对象的类,定义的时候可以使用范围操作符“..”或者“...”,“..”生成的范围对象包括起点和终点,“...”生成的范围对象不包括起点和终点,范围是由是一序列有顺序、有规律的元素对象组成,任何有顺序,有规律的一组对象,都可以用Range对象来定义,如数