js333 > 计算机互联网 > Ruby简明教程之判断语句介绍,Terry七月Ruby读书笔

原标题:Ruby简明教程之判断语句介绍,Terry七月Ruby读书笔

浏览次数:99 时间:2019-11-19

=begin
语法:
if 条件1 then
   语句1
elsif 条件2 then
   语句2
elsif 条件3 then
   语句3
else
   语句4
end
=end

注意:printf的参数之间用逗号隔开。

2. unless 语句,其恰好与if语句相反,当条件不符合时,则执行相应语句

单行while

(语句1;语句2;语句…)while条件

多行while

while  条件 

语句,语句 

end

until直到

until 跳出循环条件  语句

until 条件=while not (条件)

for…in循环

for  变量  in  对象

   语句1; 语句2 ;  语句…

end

=begin
语法:
unless 条件 then
   语句
end
=end

ii) require或者include包含的类库中的类、方法;

Ruby中条件判断的条件:

  1. case分支条件语句

1. if 语句

语言

¨         语法

关键字

¨         语义

¨         语用

 

复制代码 代码如下:

9.      赋值运算

Ruby中条件判断的条件: 1) 可以使用 ==,,等比...

交换变量a,b的值:

复制代码 代码如下:

14.  线程 

复制代码 代码如下:

1.在SciTE编辑Ruby代码;

p /Ruby/ =~ "Ruby"  返回0,则在条件判断中可以返回true

C:Documents and SettingsAdministrator>irb

irb(main):001:0> 1.upto(9){|i| print i if i<7}

123456=> 1

irb(main):002:0> 9.downto(1){|i|print i if i<7}

654321=> 9

irb(main):003:0> (1..9).each {|i| print i if i<7}

123456=> 1..9

irb(main):004:0> 0.step(11,3) {|i| print i}

0369=> 0

3. case 语句 当同一个对象,要与多个值进行比较时,可以使用case语句,其功能与JAVA中的switch语句类似

puts

每个参数后自动换行

print

不自动换行,换行用”n”

printf

按格式输出,不自动换行

gets

从键盘或文件中读入数据

条件判断,在编程语言中都存在,而Ruby中的条件判断和Java中类似,当然还是存在些许差别

3.      分隔符

复制代码 代码如下:

for,in,while,until,next,break,do,redo,retry,yield

array = ["aa", 1, nil]
item = array[0]
   case item
   when String
      puts "item is a String."
   when Numeric
      puts "item is a Numeric."
   else
      puts "item is a something"
   end
#这里比较的是对象的类型,而不是对象的值

5.      运算符

=begin
语法:
case 想要比较的对象
when 值1 then
    语句1
when 值2 then
    语句2
when 值3 then
    语句3
else
    语句4
end
# then是可以省略的
=end

-e                  执行后面的ruby脚本程序;

a = 10
b = 20
unless a>b then
   print "a is smaller than b."
end

  1. 多行if语句

2) 一些其他的方法也可以用来作为判断条件,比如,empty?方法,为空则返回true,否则返回false

Page 17 IDE

#在case表达与if语句间转换,用===,符号左边是case的值,右边为case的变量
case A
when value1                   if value1 === A
   语句1                              语句1
when value2                   elsif value2 === A
   语句2                               语句2
else                                else
   语句3                                语句3
end                                 end

begin/end

Ruby中也可以使用常用的逻辑运算符,&&,||,!,其代表的意义与JAVA中的意义是一致的。

Page 18 语法

1) 可以使用 ==,<,>等比较运算来作为条件,比较运算可以返回true和false,这和java中的语法是类似的

8.      数据类型

"==="符号的意义,其在不同的场合可以代表不同的符号,若左边是数字或字符串时,则和"=="是一样的;在正则表达式的场合下则相当于"=~";在类的场合下,判断"==="右边的对象是否是类的实例

 

Ruby中的条件判断语句:

在循环体内,如果遇到:

# -> "a is smaller than b" will be printed out.

 

3) 有些方法虽然不会返回true或false,但是也能作为条件判断的条件,他们返回的对象,要么是false或nil,要么是意义的对象,则可根据如下表格判断:

 

p ((1..3) === 2)  #-> true
p /zz/ === "zyzzy"  #-> 2
p String === "xyzzy"  # -> true

类定义:

TRUE FALSE
false和nil以外的对象 false与nil

class

a = 10
b = 20
if a>b then
   print "a is smaller than b."
elsif a == b then
   print "a equals b."
else
   print "a is larger than b."
end

  1. unless条件语句

PS: if修饰符和unless修饰符可以写在执行语句后面,例如,print "a is larger than b." if a>b,所以ruby是很灵活的。

第二种方式:irb交互执行

第一种方式:ruby命令

break

跳出当层循环;

next

忽略本次循环的剩余部分,开始下一次的循环;

redo

重新开始循环,还是从这一次开始;

retry

重头开始这个循环体。

条件语句:

a = (b = 1 + 2) + 3                #a=6 ,b=3

1.      注释

 

逻辑值和空值:

  1. 单行if语句

 

 

return

11.  判断语句

语句太长,可以在行末用符号 ,表示续行。

逗号,从左往右运算,分别赋给a,b,c

 

 

ri命令,用来查看函数说明、类说明。函数说明、类说明应该放置在=begin和=end之中。注意:“=begin”一定要写在行首,也就是说,这一行前六个字符是“=begin”,之前不允许有空格。

 

1,2,3,4

分类

用分号;表示语句结束。

 

字符串

类型

 

4.      关键字

2.      分行

end

松本行弘(Matz) 1993

a,b,c = x, (x+1), (x+2)           #a=0 ,b=1,c=2

循环语句:

Ruby程序代码用7位ACSII码来表示,通过语言扩展来支持 EUC,SJIS或UTF-8等8位编码系统。Ruby2.0版本将支持16位的Unicode编码。

if    elsif    else    end

 

单引号  ‘'

break,next&redo&retry

局部变量、方法参数和方法名称

以小写字母开头或者下划线开头;

类名、模块名和常量

用大写字母开头。

全局变量

以美元符为前缀$;

实例变量

以@开头;

类变量

用@@开头;

0        八进制,

 

x = 0                           #x=0

iii)从父类中继承得到的方法。

true,false,nil

 

Cmd

i) 关键字;

大小写敏感;

数字

 

Ruby的内嵌文档(Rdoc)注释,用ri命令从源文件中产生文档。

对象引用:

C:Documents and SettingsAdministrator>ruby -e ' printf "number:%4.3f,string %s

",1.5,"hello world"'

number:1.500,string hello world

Rdoc内嵌在ruby代码之中的,可以转换为html文档。

XP

case

 

双引号  “”

2.保存为 .rb文件;

==

等于

!=

不等于

eql?

比较两个对象的值、类型是否相等

equal?

比较两个对象在内存中地址是否相同

小于

大于

<=

小于等于

>=

大于等于

=~

匹配正则表达式

!~

断言不匹配正则表达式

===

右边的对象在左边区间内

puts(0..9)===3.14  #true puts('a'..'f')==='c'    # true

<=>

比较两个对象大小,大于1,等于0,小于-1.

print               打印显示;

1…5

if    then    end

文件相关:

__FILE__,__LINE__

例 [2.4,"thank you",[a,b,c],78]

7.      类库

 

Page 3 概述

1234下一页阅读全文

C:Documents and SettingsAdministrator>copy con helloworld.rb

print "hello world"

print "3*7=",3*7

^Z

已复制         1 个文件。

 

C:Documents and SettingsAdministrator>helloworld.rb

hello world3*7=21

正则表达式

单行注释       #                多行注释     =begin            =end

BEGIN,END

1,2,3,4,5

require,include,应该取消BEGIN和END的语法定义。

Ruby里,nil和false为假,其它都为真。

标识名第一个字符表明这个名字的用法。

10.  条件运算

区间

3.菜单栏,工具->运行或者F5;

times , upto , downto , each ,step

¨         解释执行:Python,Ruby,交互性很好;

¨         编译执行:Pascal, C,速度较快。

n         本地执行,如C,C++;

n         虚拟机执行,如Java, C#。

 

¨         动态语言,如JavaScript,Ruby;

¨         静态语言,如C++,Java。

模块定义:

数组

BEGIN模块相当于C语言中的宏,END模块用来作一些收尾工作。有了

try…catch…finally…throw

def,undef

浮点型

逻辑判断:

词首字母后面可以是字母、数字和下划线的任意组合;

异常处理:

别名:

Ruby

hello,world     要输出的内容。

名称

符号

用途

分号

;

用来分隔一行中的多个语句

圆括号

(  )

提高优先级;定义方法时容纳参数列表

空格

 

分隔字符;在可省略()的地方,代替()

逗号

,

隔开多个参数

.

将对象与它的方法隔开

紧连的两个冒号

::

域作用符,将模块(类)与它的常量隔开

when

C:Documents and SettingsAdministrator>irb

irb(main):001:0> print "hello world"

hello world=> nil

irb(main):002:0> exit

(    ) if

可以直接使用:

12.  循环语句

图片 1 

 

第三种方式:创建ruby脚本

¨         FreeRIDE+SciTE

说明及示例

方法返回:

 

C:Documents and SettingsAdministrator>ruby -e 'print "hello world"'

hello world

if not

not,and,or

语句

运行结果

3.times { print  "Hi!" }

#Hi!Hi!Hi! 

1.upto(9) {|i| print  i  if  i<7 }

#123456   

9.downto(1){|i| print  i  if  i<7 }

#654321

(1..9).each {|i| print  i  if  i<7}

#123456   

0.step(11,3) {|i| print  i  }

#0369     

 

0x  十六进制,0b  二进制

 

 

alias

 

 

 

一行多个语句,用分号隔开,最后一个语句,分号可以省略,换行符表示一行结束。

C:Documents and SettingsAdministrator>ruby -e 'puts "hello","world"'

hello

world

unless

C:Documents and SettingsAdministrator>ruby -e 'printf "number:%f",3.2'

number:3.200000

6.      标识名:

注意括号:

嵌入模块:

 

Java

1..5

Ruby 吸取了 perl 的正则表达式, python 的简单性可读性,smalltalk 的纯面向对象语法和单继承,LISP 的无穷嵌套的语法,Java的线程…

13.  异常

从0开始,每个元素可以不同类型

begin/end…rescue…ensure…raise

a,b=b,a;

您可能感兴趣的文章:

  • ruby 学习笔记(2) 类的基本使用
  • Ruby rails 页面跳转(render和redirect_to)
  • 在Ruby on Rails中使用Rails Active Resource的教程

rescue,ensure

Ruby中的关键字如下:

 

module

exit: 退出irb交互式环境

方法定义:

整数型

¨         Eclipse + RDT(Ruby Development Tools)

块的起始:

检查类型:

@后面不可以直接跟数字。

ruby               运行ruby;

defined?

retry可以用在rescue中。可以只用rescue或ensure,两者都使用时,rescue必须在ensure前。

Page 14 上手

else

 

super,self

when

if,then,else,elsif,case,when,unless

 

常量,变量,方法,类和模块;

Ruby [`ru:bi](红宝石)

C:Documents and SettingsAdministrator>ruby -v

ruby 1.8.6 (2007-09-24 patchlevel 111) [i386-mswin32]

本文由js333发布于计算机互联网,转载请注明出处:Ruby简明教程之判断语句介绍,Terry七月Ruby读书笔

关键词:

上一篇:HTML5不支持标签和新增标签

下一篇:没有了