详明Ruby个中的算数运算

2019-11-18 15:56 来源:未知

安详严整Ruby当中的算数运算,详明Ruby算数运算

 Ruby扶植生龙活虎多种丰硕的运算符的三个今世化的语言。大许多运算符实际上是办法调用。举例,a

  • b的被阐述为a,
    +(b)变量援用的指标的形式被喻为一个用b作为它的参数。

对此每种运算符 (+ - * / % ** & | ^ << >> && ||), 有对应的赋值运算符缩写格局 (+= -= 等)
Ruby算术运算符:

若是变量a=10,变量b=20:

图片 1

 Ruby相比较操作符:

万生龙活虎变量a=10,变量b=20:

图片 2

 Ruby赋值运算符:

只要变量a=10,变量b=20:

图片 3

 Ruby并行赋值:

Ruby还援救互相赋值的变量。那使得多少个大器晚成行Ruby代码来初步化变量。比如:

a = 10
b = 20
c = 30

亟需越来越高速注明,使用并行赋值:

a, b, c = 10, 20, 30

相互赋值沟通五个变量的值也是立见成效的:

a, b = b, c

Ruby位运算符:

位运算符位和位操作施行位。

假如当a =60和b=13;以后以二进制格式将如下:

a = 0011 1100

b = 0000 1101

-----------------

a&b = 0000 1100

a|b = 0011 1101

a^b = 0011 0001

~a = 1100 0011

支撑Ruby语言的位运算符

图片 4

 Ruby逻辑运算符:

支撑Ruby语言的逻辑运算符

借使变量a=10,变量b=20:

图片 5

 Ruby长富运算符:

再有一个运算符称为长富运算符。那首先总计二个表明式为true或false值,然后施行二个测算结果来调节四个语句的哪多个。条件运算符的语法如下:

图片 6

 Ruby范围运算符:

Ruby中的类别范围是用来创设一连值 - 组成了初始值/甘休值,并在两个之间的值的限量内。

在Ruby中,创制那个体系使用“..”和“...”范围运算符。那八个点的情势确立叁个包容性的限制,而几个点的花样创制了三个节制,不包罗内定的最大值。

图片 7

 Ruby defined? 操作符:

defined是一个出色的操作符接收的花样的办法调用,以鲜明是还是不是经过表达式定义。若无被定义的表明式,它回到三个汇报字符串求解出的表达式或nil

有很八种用法 defined操作符:
用法 1

defined? variable # True if variable is initialized

例如 :

foo = 42
defined? foo  # => "local-variable"
defined? $_   # => "global-variable"
defined? bar  # => nil (undefined)

用法 2

defined? method_call # True if a method is defined

例如 :

defined? puts    # => "method"
defined? puts(bar)  # => nil (bar is not defined here)
defined? unpack   # => nil (not defined here)

用法 3

# True if a method exists that can be called with super user
defined? super

例如 :

defined? super   # => "super" (if it can be called)
defined? super   # => nil (if it cannot be)

用法 4

defined? yield  # True if a code block has been passed

例如 :

defined? yield  # => "yield" (if there is a block passed)
defined? yield  # => nil (if there is no block)

Ruby "." 双冒号 "::" 运算符:

调用八个模块方法,通过模块的称呼和句点它的名字前,援引三个常数使用该模块的名称和四个冒号。
::使得一元运算符,常数,实例方法和类格局在类或模块定义,从其余市方访谈外的类或模块。
请牢牢记住:在Ruby中,类和方法能够被视为常数。只供给前缀::Const_name的表明式再次回到相应的类或模块对象。
比方未有前缀表明式时,首要对象类暗中同意意况下行使。
此地有四个例证:

MR_COUNT = 0    # constant defined on main Object class
module Foo
 MR_COUNT = 0
 ::MR_COUNT = 1  # set global count to 1
 MR_COUNT = 2   # set local count to 2
end
puts MR_COUNT    # this is the global constant
puts Foo::MR_COUNT # this is the local "Foo" constant

Second Example:

CONST = ' out there'
class Inside_one
  CONST = proc {' in there'}
  def where_is_my_CONST
   ::CONST + ' inside one'
  end
end
class Inside_two
  CONST = ' inside two'
  def where_is_my_CONST
   CONST
  end
end
puts Inside_one.new.where_is_my_CONST
puts Inside_two.new.where_is_my_CONST
puts Object::CONST + Inside_two::CONST
puts Inside_two::CONST + CONST
puts Inside_one::CONST
puts Inside_one::CONST.call + Inside_two::CONST

Ruby运算符优先级

下表列出了有着运算符从最高优先级到低于。

图片 8

注: 方法列二个是运算符实际上是办法,由此可能会被改写。

Ruby协助大器晚成多种丰盛的运算符的几个今世化的语言。大繁多运算符实际上是办法调用。比如,a...

TAG标签:
版权声明:本文由990888藏宝阁发布于关于计算机,转载请注明出处:详明Ruby个中的算数运算