Ruby安装好之后,我们就可以来实践Ruby语言了。

以下是一些学习到的简单基础知识:

1. 如何执行Ruby文件?

我们编写的Ruby文件是以rb为后缀名的,例如:XXX.rb。当要执行ruby文件时,可以打开命令行窗口,进入到Ruby文件所在的目录下,通过命令ruby XXX.rb来执行,可以看如下示图:

2. print方法:用于打印字符串功能,print ("Hello", " Ruby !", "\n")   print "Hello Ruby !\n"

3. 换行符:\n,\n\t, 转义符:\

4. puts方法: 和print方法类似,也是用来打印字符,但其中每个分段的字符串都会自动换行。例如, puts ("Hello", "Ruby", "!") 显示结果如下:

5. p方法:用来显示数据的方法,其不会对数据做任何修改,只是显示数据。例如:p "Hello, \n\t Ruby" 则引号会保留:

6. 可以直接用四则运算,数学函数计算

7. 注释:使用#开头的语句都会被当做注释,也可以将注释写在语句中间,则后面以#开头的语句都会当做注释了。

如果是一大段东西都是注释,则可以将需要注释的语句都放在=begin=end之间,如下所示:

PS: 在JAVA中,注释可以用//, 或者/* ........*/

=begin
This is comment for Ruby program
print "Hello Ruby !"
=end

8. Ruby中的变量:变量和JAVA中变量类似,只是没有数据类型,但是有特殊的变量名,然后赋值。

变量有以下类型:局部变量 (变量名以小写字母或_起始的变量)

全局变量 (变量名以$起始的变量)

实例变量 (变量名以@起始的变量)

类变量 (变量名以@@起始的变量)

虚拟变量 ('true', 'false', 'self'等特定名称的变量)

9. 读取文件内容:open(filename)方法,打开文件,并且会返回一个文件对像

filename = ARGV[0]
file = open(filename) #使用open方法获取文件对象
text = file.read #使用read方法来将文件对象的内容读取出来
print text
file.close #关闭文件对象

10. 读入其他文件:即想要在当前程序中调用另外一个程序的方法,则需要读入其他文件 -》 require "想要读入的库名",其中名字可以省略.rb这个后缀名。也可以读取其他的标准库。

require "hello"  #读入Hello.rb文件
hello() #调用hello.rb中的hello()方法

11. 条件判断:if~then~else~end,而JAVA中则没有then和end(后面会详述)
12. 字符串反复执行:while (condition) do~end, 对象.times方法 (后面会详述)

13. 每个对象都有ID和值。1)每个对象都有object_id这个方法来获得ID; 2)每个对象都可以通过equal?方法来判定是否为同一个对象,即ID是否相同。3)若判断对象持有的值是否相等,则使用==,也可以使用eql?方法,但使用==时候,需要进行必要的转换,而eql?则可以不变换就能直接进行比较。

PS: 大家可以思考下,在JAVA中,==与equal()方法的区别

ary1 = []  #定义一个数组
p ary1.object_id # => 67653636 str1 = "foo"
str2 = str1
str3 = "f" + "o" + ''o"
p str1.equal?(str2) # =>true
p str1.equal?(str3) # =>false p str1 == str3 # =>true p 1.0 == 1 # =>true
p 1.0.eql?1 # =>false

Ruby自学笔记(二)— Ruby的一些基础知识的更多相关文章

  1. 《Programming Hive》读书笔记(两)Hive基础知识

    <Programming Hive>读书笔记(两)Hive基础知识 :第一遍读是浏览.建立知识索引,由于有些知识不一定能用到,知道就好.感兴趣的部分能够多研究. 以后用的时候再具体看.并结 ...

  2. tensorflow笔记(一)之基础知识

    tensorflow笔记(一)之基础知识 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7399701.html 前言 这篇no ...

  3. php面试笔记(5)-php基础知识-自定义函数及内部函数考点

    本文是根据慕课网Jason老师的课程进行的PHP面试知识点总结和升华,如有侵权请联系我进行删除,email:guoyugygy@163.com 在面试中,考官往往喜欢基础扎实的面试者,而函数相关的考点 ...

  4. php面试笔记(3)-php基础知识-运算符

    本文是根据慕课网Jason老师的课程进行的PHP面试知识点总结和升华,如有侵权请联系我进行删除,email:guoyugygy@163.com 在面试中,考官往往喜欢基础扎实的面试者,而运算符相关的考 ...

  5. 【二】、UML基础知识——图图解乾坤

    [二].UML基础知识 UML概述 UML是一个通用的可视化建模语言,不同于编程语言,它通过一些标准的图形符号和文字来对系统进行建模.用于对软件进行描述.可视化处理.构建软件系统的文档.是一套总结了以 ...

  6. Ruby自学笔记(一)— 基本概况

    之前一直想要多看看RESTful Service相关的东西,找到一本相关的书,但是里面的代码都是用Ruby写的,虽然知道编程语言都是类似的,但是看到一些陌生的语法,还是有些摸不着头脑,所以最近终于下定 ...

  7. TCP/IP协议(二)tcp/ip基础知识

    今天凌晨时候看书,突然想到一个问题:怎样做到持续学习?然后得出这样一个结论:放弃不必要的社交,控制欲望,克服懒惰... 然后又有了新的问题:学习效率时高时低,状态不好怎么解决?这也是我最近在思考的问题 ...

  8. 二、tcp/ip基础知识

    一.TCP/IP的标准化 1.TCP/IP的含义 一般来说,TCP/IP是利用IP进行通信时所必须用到的协议群的统称. 具体点,IP或ICMP.TCP或UDP.TELENT或FTP.以及HTTP等都属 ...

  9. Linux运维笔记(一)网络基础知识

    网络基础知识 一.基本概念 1.ARPANET & TCP/IP:以“软件”技术将网络硬件整合,使得不同的计算机或者数据可以通过这个软件达成数据沟通(TCP/IP技术也被称为Internet) ...

随机推荐

  1. mysql inner join,full outer join,left join,right jion

    https://sites.google.com/site/349624yu/courses/mysql/mysqldbgjzcx inner join,full outer join,left jo ...

  2. python之json学习

    1. 从python原始类型向json类型的转换过程,具体的转换如下: import json json.dump(obj, fp, skipkeys=False,ensure_ascii=True, ...

  3. Android中的主题Theme

    系统自带的Theme: android以及为我们定义好了一些theme,需要是我们直接可以拿来使用. 常用的Theme通常如下:  android:theme="@android:style ...

  4. JAVA操作Excel时文字自适应单元格的宽度设置方法

    使用JAVA操作Excel通常都使用JXL,方法很简单网上也有很多的教程,然后往往一些细节性的问题却导致我们这些Programmer苦恼不已.这两天帮一个朋友做一个Excel表格自动生成的小软件,就遇 ...

  5. linux下ntfs硬盘的加载

    问题:       # mount –t ntfs /dev/sdb1 /mnt/       mount: unknown filesystem type ‘ntfs’       这是由于Cent ...

  6. JavaScript的变量提升

    在JavaScript中,var变量具有函数级作用域,而且是整个函数作用域.为什么会是整个函数作用域呢?因为var变量具有变量(声明)提升功能,能将变量声明隐式的提升到函数体的顶部.这样做的一个好处就 ...

  7. VS 2015 update2 装xamarin后,编辑axml文件无智能提示的解决方法。

    1.从github网上下载xsd文件.地址:https://github.com/atsushieno/monodroid-schema-gen: 2.如果你是以ie或edge浏览器下载的,一定要又键 ...

  8. C++ 进阶必备

    C++ 进阶要点(原理+熟练使用) 持续更新中 虚函数 虚继承 多继承 构造函数,拷贝构造函数,赋值构造函数,友元类,浅拷贝,深拷贝,运算符重载 class 类的基本使用,iostream获取屏幕输入 ...

  9. 第三篇:python基础之编码问题

    python基础之编码问题   python基础之编码问题 本节内容 字符串编码问题由来 字符串编码解决方案 1.字符串编码问题由来 由于字符串编码是从ascii--->unicode---&g ...

  10. HTML的Get方法URL传递中文参数,解决乱码问题

    本例中有使用JQuery. 资料参考:http://www.cnblogs.com/babycool/p/3169058.html 发送的HTML页面代码: <!DOCTYPE html> ...