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. 规则引擎QLExpress的简单应用

    QLExpress 是一个轻量级的类java语法规则引擎,作为一个嵌入式规则引擎在业务系统中使用.让业务规则定义简便而不失灵活.让业务人员就可以定义业务规则.支持标 准的JAVA语法,还可以支持自定义 ...

  2. Java 执行jar linux 实例

    需求:通过执行jar的方式 ,把某个文件路径下的用户数据同步到redis 1.main 函数 public class Main { private static Logger logger = Lo ...

  3. php开发工具zendstudio13破解补丁

    io?  Intelligent Code Editor Robust Debugging Capabilities Eclipse Ecosystem Mobile: AngularJS, Ioni ...

  4. nandflash中oob、ecc分析

    1.为何需要分析? 最近一直接触这类驱动,如果对它的原理不懂的话,驱动调试会很麻烦!!!!!! 2.ecc? nand的纠错能力,目前有1位.4位和8位,也就是说在512字节中如果是4位的ecc那就可 ...

  5. android生成验证码bitmap

    不多说了,直接上代码,项目中用到的,未做优化,还有很多参数未设置. [java] view plaincopy 1.import java.util.Random; 2. 3.import andro ...

  6. IOS的工程目录结构和生命周期

    IOS的工程目录结构和生命周期 ·simple table文件夹:工程相关源代码和配置文件 BIDAppDelegate :    委托的声明和实现 BIDViewController:    视图控 ...

  7. 规范javascript书写

    空白 缩进 换行限制 if while for do 2.  命名 常量 URL_CONFIG 变量 listLen 函数命名 调用函数  function setStyle(dom, name, v ...

  8. javascript高级培训课程(一)

    执行上下文 可执行代码类型-- 执行上下文类型 全局代码--  全局上下文 函数代码-- 函数上下文 eval代码 -- eval上下文 arguments   超出传入参数个数的index 与形参不 ...

  9. C#解leetcode 64. Minimum Path Sum

    Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right which ...

  10. weex-toolkit打包

    需要2.15.1及以上的npm支持 运行终端,查看版本 npm --version 如果版本低于2.15.1,需要更新 sudo npm install -g npm 安装weex-toolkit n ...