ruby 学习 -- Array --2】的更多相关文章

定义: [1, 2, 3] # An array that holds three Fixnum objects [-10...0, 0..10,] # An array of two ranges; trailing commas are allowed [[1,2],[3,4],[5]] # An array of nested arrays [x+y, x-y, x*y] # Array elements can be arbitrary expressions [] # The empt…
写ruby blog  系统的记录下.也是对我学ruby的点滴记录. 先介绍下我的学习环境.系统:ubuntu12.04文档:techotopia ,ruby文档,the hard way learn ruby 以及其他文档记录:有道云笔记 关于ruby 学习ruby 通常会介绍下ruby的历史和发展,但是我觉得这些有的废话, 关于ruby,是一个日本人写出来的,是一门解释性语言 这就够了. 开始 在ubuntu上 ,先判断下是否installed ruby. 1 ruby -v 如果安装了会打…
作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Ruby学习心得之 Linux下搭建Ruby环境1.前言2.Linux下安装Ruby环境 一.前言 本篇博文记录了Linux下Ruby编程环境的搭建. 本文内容基于以下文章:http://www.cnblogs.com/xfiver/archive/2012/03/08/2385833.html (linux下ruby安装[ubuntu10.10])http://www.360doc.co…
直接上代码: module Action def jump @distance = rand(4) + 2 puts "I jumped forward #{@distance} feet!" end end class Rabbit include Action attr_reader :name def initialize(name) @name = name end end class Cricket include Action attr_reader :name def i…
Ruby官方中文网(推荐): https://www.ruby-lang.org/zh_cn/ 国内非常不错的Ruby学习教程网站(推荐): http://www.yiibai.com/ruby Ruby API (推荐): http://ruby-doc.com/ Ruby国外知名论坛: https://www.ruby-forum.com/ Ruby+Eclipse集成: http://www.ibm.com/developerworks/cn/opensource/os-rubyeclip…
Ruby学习笔记4: 动态web app的建立 We will first build the Categories page. This page contains topics like Art, Home & Living, and Kids, so our users can browse through categories and find what they like. Each Category in our site will need to store information…
ruby学习笔记-puts,p,print的区别 共同点:都是用来屏幕输出的. 不同点:puts 输出内容后,会自动换行(如果内容参数为空,则仅输出一个换行符号):另外如果内容参数中有转义符,输出时将先处理转义再输出p 基本与puts相同,但不会处理参数中的转义符号print 基本与puts相同,但输出内容后,不会自动在结尾加上换行符 1 2 3 4 5 6 7 s = "aaaa\nbb\tbb"   p s p "****************" puts s…
from:http://segmentfault.com/a/1190000000362058 Ruby 语言 Try Ruby: 无需在你的系统中安装.Ruby,只要通过浏览器便可立即体验 Ruby. Learn Ruby the Hard Way: 来自 Zed A. Shaw 的笨办法学习系列,该书强调通过实际动手来学习 Ruby 编程,即使你没有任何编程经验. Ruby Monk: 在线交互式学习 Ruby,推荐给 Ruby 入门者. Ruby Koans: Ruby 启蒙练习,通过 R…
1.block 代码块 do...end 或 {} 构成一个代码块,就像常见的 .each后面跟的代码块. my_nums = [1,2,3] my_double_nums = my_nums.collect {|num| num*2} puts "#{my_double_nums}" #=> [2,4,6] collect能作用在Array的每个元素上,也支持collect! 操作,即改变数组本身.map! 和 collect! 作用相同 yield关键字 yield能够在方法…
在讨论对象模型时,对类做了初步了解,关于类本身,还有许多知识需要学习. 类定义 Ruby中,可以用class关键字或者Class.new方法来定义一个类,在Ruby中,类定义的同时就是在运行代码,类和方法.块一样,会返回最后一条语句的值,由于类也是一个对象(Class的实例),所以在类定义操作时,类本身就会充当self: result = class MyClass    puts self    "return value"endputs result 以上语句输出: MyClass…
代码块在其他的语言中都或多或少接触过一些,如perl中sort{$a<=>$b}keys,传入代码块实现按数值排序,在swift中用到闭包,更加深入学习到training closure.capturing value等代码风格,对代码块有了深入的了解,并且意识到代码块是引用类型(Reference Type),和Value Type有所区别,意识到代码块和类.方法等的相似之处. 在学习Ruby的过程中,对代码块的理解更加加深一步,不仅仅是简化代码的功能,还涉及到作用域.可调用对象等知识. 代…
这两周工作内容较多,平时自己也有点不在状态,学的东西有点少了,趁着现在还有点状态,赶紧复习一下之前学习的Ruby吧. Ruby是我真正开始接触动态语言魅力的第一个语言,之前虽然也用过且一直用perl.python等脚本语言,但是只是作为unix shell的扩展(和工作有关),没有真正地审视动态语言的哲学.是<Ruby元编程>这本书,好像给我打开了一扇新世界的大门,书中介绍的每一个特性都让我兴奋地几乎跳起来,这就是学习的魅力吧. Ruby语言初探 由于是第一个Ruby的随笔,先简单介绍一下ru…
条件控制 本人喜欢用程序demo记录的方式来记录某方法的使用,如times方法,仅作个人学习记录 #--------------if语句(相反是unless)而while相同于until-------------- print "--------------if------------------------ ps: in ruby,the symbol ','just works as plusing string\n" x = 0 if x==0 then end p "…
Ruby 有4种数据类型:String, Boolen, Array, Hashes Ruby 有3种操作方法:Method, attribute, ?? Ruby 有xxx: Classes, Object.... ====先来看数据类型==== 1. String and Declaring the variables: name = "Wonder Woman" #declare a var and store a string puts name <span style=…
这里是一个Ruby开发的快速参考指南: Ruby是什么 ? Ruby是一种纯粹的面向对象编程语言.它由日本松本幸创建于1993年. Ruby是一种通用的解释编程语言如Perl和Python. IRb是什么 ? 交互式Ruby(IRB)为实验提供了一个shell.内置IRB shell,你可以立即一行行查看表达式的结果. 该工具自带Ruby安装,所以你必须做一些额外的IRB工作无关.只需键入在命令提示符IRB和交互式Ruby会话将启动. Ruby语法: Ruby代码一般忽略空白字符,如空格和制表符…
还没开始系统性的学习Ruby,最近在看metasploit框架的exploit会涉及到Ruby脚本,也就硬着头皮一遍查阅资料一遍做些笔记吧. Ruby字符串中存在chop和chomp的内置函数.我在http://www.w3cschool.cc/ruby/ruby-string.html中得到的关于Ruby字符串chop和chomp的用法介绍如下:       单从这几句话,还是有些不明白(貌似借鉴于perl语言中的chop和chomp函数的用法),然后百度了一下,我在http://blog.c…
安装Ruby后,打开命令行,先来看下Ruby的版本. ruby -v ,如果看到类似 ruby 1.9.3p392.... ,说明我们的Ruby安装成功了. 然后我们输入 irb ,进入Ruby的交互控制台.在这里,可以不用编辑器来简单的学习Ruby的功能. 在控制台中输入ruby代码,回车立即就能看到结果. 你可能听过Ruby中一切都是对象,字符串是对象,数字是对象,甚至方法名也是对象. 如果我们要取一个数的绝对值.PHP中我们要abs(-1),JS中Math.abs(-1).而Ruby的世界…
1. sort → new_ary click to toggle source sort { |a, b| block } → new_ary Returns a new array created by sorting self. Comparisons for the sort will be done using the <=> operator or using an optional code block. The block must implement a comparison…
学习ruby最好的方法就是下载源码包,里面带有sample和test,是入门学习的最好实例. 我下载的是2.1.0版本,首先./configure,然后make,sudo make install.从common.mk文件中可看出,包含有两类test:test和test-all,test主要是对sample/test.rb进行测试,test-all用于对test文件夹中的用例进行测试. 在make test-all过程中,提示未找到zlib,需要通过gem下载,下面就复习一下gem的语法 gem…
#!/usr/bin/env ruby class MegaGreeter attr_accessor :names # 初始化這個物件 def initialize(names = "World") @names = names end # 向每個人說 hi def say_hi if @names.nil? puts "..." elsif @names.respond_to?("each") # @names 是可以迭代的陣列容器 @nam…
变量 在ruby的世界里,变量有5种,全局变量 局部变量 实例变量 常量 类变量以及伪变量 常用的: 全局: 在全局使用,使用$开头,因为是全局的,所以在任何的代码例子中都可以改变其值,造成混乱,所以不建议使用. 局部: 在一定范围内有作用.如 i = 10 ,其中i 就是一个局部变量 常量: 例如圆周率Pi,但是Pi 我们可以赋予他其他值,是可以变化的. 常量的首个字母必须大写,当试图改变常量值时,解释器会给出警告“ex4.rb:19: warning: already initialized…
我们可以认为module是一个专门存放一系列方法和常量的工具箱. module和class非常像, 只是module不能创建实例也不能有子类, 它们仅仅能存放东西. 例如: module Circle PI = 3.141592653589793 def Circle.area(radius) PI * radius**2 end def Circle.circumference(radius) 2 * PI * radius end end module书写格式 module ModuleNa…
#!/usr/bin/ruby puts "Hello, Ruby, what is your name?" $name = STDIN.gets puts "Hi, I am "+$name def welcome(name,a = 9,b = 9,*c) puts "Hi #{name}" c.each{|x| print "#{x}"} # print "a = "+ $a a = 10; b = 1…
1.数值类(Numeric) 有理数:Rational(分子,分母) 复数:Complex(实数,虚数) 随机数:Rnadom   rand()  返回比1小的浮点数,rand(种子数)  返回0到该正整数之间的数值 数值间的'_'会被忽略,如123_213=>123213 循环计算:n.times{|i|}  循环n次,从0~n-1 from.upto(to){|i|}  从from递增到to    from.downto(to){|i|} 从from递减到to from.step(to,st…
1.类和实例的关系 使用[实例.class]查看某个对象属于哪个类 使用[实例.instance_of(类名)]判断该实例是否属于某个类 使用[实例.instance_methods]查看类的所有实例方法 2.BasicObject类是所有类的父类,它只定义了ruby对象的最基本的方法,甚至连一般对象需要的功能都没有,顾一般继承Object类,可以通过[is-a]或[is-a?]判断继承关系 3.类可以通过[class]关键字进行创建,默认具有无参的构造方法,通过是可以通过定义[initiali…
1.ruby的两种运行方式:ruby方式咋(在命令行中输入ruby xxx.rb)和irb方式(在命令行中输入 irb) 注意:可以在命令后添加 -E UTF-8 指定编码格式 例:ruby -E UTF-8 XXX.rb    irb -E UTF-8 2.输出的三种方式:print,puts,p 区别:puts  每个字符串输出后都会添加换行符 p:字符串输出时会添加引号,同时对特殊字符不进行转义,原样输出 注意:单引号中的内容换不进行转义,原样输出 输出多个时,可以使用逗号隔开 字符串中嵌…
# define french_string = "il \xc3\xa9tait une fois" long_string = <<EOF Here is a long string With many paragraphs EOF puts long_string.empty? puts long_string.include? "many" puts french_string + long_string # concatenate hash =…
A literal array is created by putting squarebrackets around a comma-separated list of elements eg: # ["zero" , "un" , "dos" , "tre" ] a = ['zero' , 'un' , 'dos' , 'tre' ] a.length a.size # "zero" a[0] # [&…
1.类名的定义以大写字母开头,单词首字母大写,不用"_"分隔 2.实例化对象的时候调用new方法,实际上调用的是类里边的initialize方法,是ruby类的初始化方法,功能等同于Java中的构造方法 class Person def initialize(name, gender, age) @name = name @gender = gender @age = age end end 3.可以使用attr_accessor关键字标记实例变量,为其提供读写方法,类似java中的g…
一.全局变量 ruby中支持全局变量,ruby中的全局变量有如下几个特点: 1)标识符以$开头标记 2)全局变量可以在程序的任何地方加以引用 3)全局变量无需提前进行变量声明.引用尚未初始化的全局变量时,其值为 nil. 我们下面来看例子 class Demo def print puts $a end end puts $a #引用未声明的全局变量,$a这时值为nil demo = Demo.new demo.print #类方法中引用未声明的全局变量,$a这时值为nil $a=12 demo…