1.对象
  • 数值对象
  • 字符串对象
  • 数组对象,散列对象
  • 正则表达式对象
  • 时间对象
  • 文件对象
  • 符号对象
2.类
  • Numeric
  • String
  • Array
  • Hash
  • Regexp
  • File
  • Symbol
3.变量,变量的开头决定了变量的类型
  • 局部变量,以英文字母或者_开头
  • 全局变量,以$开头
  • 实例变量,以@开头
  • 类变量,以@@开头
  • 伪变量(nil,true,false,self等)
4.常量以大写字母开头
5.保留字
 
 
1.变量赋值
a,b=1,2
puts "a,b=#{a},#{b}"

a,b=b,a #交换两个变量的值
puts "a,b=#{a},#{b}"

a,b,c,d,e,f=1,2,3 #多余变量的值设置为nil
print a,',',b,',',c,',',d,',',e,',',f,"\n"

a,b,c=1,2,3,4,5  #多余值被忽略
puts "a,b,c=#{a},#{b},#{c}"

a,b,*c=1,2,3,4,5 #最后一个变量变成了数组
puts "a,b,c=#{a},#{b},#{c}"

ary = [1,[2,3],4]
a,b,c=ary #中间变量被赋值为数组
puts "a,b,c=#{a},#{b},#{c}"

 
 
F:\book\ruby\code>ruby chgvar.rb
a,b=1,2
a,b=2,1
1,2,3,,,
a,b,c=1,2,3
a,b,c=1,2,[3, 4, 5]
a,b,c=1,[2, 3],4
 
 
 
2.更好用的打印pp,会根据数据结构增加换行
 
require "pp"
pp data
 
 

Ruby 基础教程1-4的更多相关文章

  1. 1月10日 ruby基础教程,查漏补缺; 2月22日 Exception补充

    https://ruby-doc.org/core-2.5.0/Exception.html 1月20日练习完1,2章. 第一章 初探 ‘’单引号不执行转义符. \t 制表符.\n 换行符. p me ...

  2. Ruby基础教程

    一.Ruby基础知识 1.关于Ruby Ruby是脚本语言 Ruby是面向对象语言 Ruby是跨平台语言 Ruby是开放源码软件 2.Ruby入门书籍推荐 <Ruby.Programming向R ...

  3. Ruby 基础教程 第二部分 Ruby 的基础 第4章

    第二部分 Ruby 的基础 第4章~第6章 这一部分是 Ruby 编程需要遵守的规则. 第四章 对象,变量与常量 对象 & 类 对象的常见种类: 数值对象 字符串对象 数组.散列对象 正则表达 ...

  4. Ruby 基础教程 第一部分总结

    第一部分:Ruby 初体验 第一章: Ruby 初探 前言 开头的这一章节讲了一些十分基础的内容,重要的几个话题有: ruby 命令的执行方法 对象.方法的概念 常见的打印方法 ruby 命令的执行方 ...

  5. Ruby 基础教程1-5

    1.条件语句 if unless case        unless和if相反,条件不成立则执行   2.条件  除了 false和nil 其他都是true   3.unless 语法        ...

  6. Ruby 基础教程 1-1

    1.指定编码方式       第一种 在代码文件首行通过 #encoding:GBK的方式     第二种  ruby -E UTF-8 文件名称     第三种  irb  -E UTF-8   2 ...

  7. Ruby基础教程 1-10

    类结构 1.数值类结构     Fixnum到Bignum会自动转换   2.常用数值表示   3. ans=10.divmod(3) ans[0]是商  ans[1]是余数   4.实例方法roun ...

  8. Ruby 基础教程1-9

    异常 1.异常结构      [ begin]          ...     rescue         [retry]          ...     [ensure]          . ...

  9. ruby 基础教程1-8-1

    1.":class, instance_of?, :is_a?"都是Object类的方法,每个对象都可以调用 2.":class"方法用户获取对象归属类的名称 ...

随机推荐

  1. Androidannotation使用之@Rest获取资源及用户登录验证(一)

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/NUPTboyZHB/article/details/24384713 简介: 上一篇博文简单的介绍了 ...

  2. windows快捷命令修炼

    Description Windows Key combination Open/Close the Start Menu Windows key Open the Action center. Wi ...

  3. python中模块与包的概念

    在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护.为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多 ...

  4. win7系统安装VS2013后,连不上远程sqlserver数据库解决办法

    刚搬了地方,顺便把电脑重做了系统,把sql2012和vs2013装好,怎么弄也连不上远程的数据库了,用程序连IIS直接死掉,用ssms连也是直接失去响应,开始以为是网线端口被运营商封杀了,最后发现不是 ...

  5. The Linux Kernel

  6. JQuery手写一个简单的轮播图

    做出来的样式: 没有切图,就随便找了一些图片来实现效果,那几个小星星萌不萌. 这个轮播图最主要的部分是animate(),可以先熟悉下这个方法. 代码我放到了github上,链接:https://gi ...

  7. linuxc - entos 7.3 开放端口并对外开放

    1. 查看已打开的端口 # netstat -anp 2. 查看想开的端口是否已开 # firewall-cmd --query-port=666/tcp 若此提示 FirewallD is not ...

  8. ios之runtime

    简介 OC是从C语言发展过来的, 之所以能变为动态语言是因为runtime机制, runtime就是OC在运行时的一些机制: OC的runtime最重要的是消息机制. 在编译阶段,OC可以调用任意函数 ...

  9. js取一个对象中的另一个对象

    最开始的截图 原本是想取到其中的foodName 先是用一个for循环循环了下 for (var i=0;i<res.data.length;i++) { this.goodsList.res. ...

  10. Qt5应用程序封包

    系统环境:windows10+vs2017+qt5.12 目的:生成.exe可执行文件. 步骤: 1.选择release模式,生成解决方案. 2.打开命令行,cd到生成的可执行文件.exe目录下 3. ...