Ruby基础学习:对象、数组、操作符、字符串、引号、哈希变量

一、前言

我之前很讨厌听到的一句话:“TensorFlow(库)挺低端(垃圾的),看不起…”
每次学习一门编程语言,脑海里总出现这样一句话:“没有什么最好的编程语言,只有更好用的编程语言,或者说只有更适合的编程语言”。
高手从来不拔刀,高僧只说家常话。希望大家科研顺利。

Ruby简单介绍

Ruby是脚本语言,类似于python、Node.js等。

先个人解释下什么是脚本语言?
脚本语言是写一行执行一行、而无需关注下一行的语言,个人觉得可解释性强,类似于一个一个小组件拼凑起来的,最后统一调用,就像最近学习的Vue,接触的越多这方面的感触越深。

非脚本语言比如Java,c这些,必须读取整个源程序内容、建立完执行环境后执行的语言。例如代码里有错误,连编译这一关都通不过的。

Ruby下载(windows)
https://rubyinstaller.org/downloads/
If you don’t know what version to install and you’re getting started with Ruby, we recommend that you use the Ruby+Devkit 2.7.X (x64) installer.
因此,按照官方建议,选择这个进行下载:Ruby+Devkit 2.7.X (x64)
x64.7z在这里插入图片描述
傻瓜式安装,安装过程略!
在这里插入图片描述

测试:

  1. 打开终端、输入ruby -v、输入irb
    在这里插入图片描述
  2. 新建一个xx.rb文件, 在文件中输入puts “Hello World”,在当前路径终端中执行“ruby xx.rb”,将会看到“Hellow World”输出。

学习

  1. 备注的使用
    (1)# 同python一样
    (2)多行备注,举例
    =begin
    和python不一样
    =end
    或者
    _End__后面所有的东西都是备注(前后都是两个英文字符+_)
  2. 定义函数+传参(和Python很像,有点好奇开发作者是不是借鉴了Python)
def sayHello(name="Dongliang")
	puts “Hello World, Hello #{name}”
end

sayHello("Dongliang")
  1. 对象(重点)
    再复习一遍什么是面向对象?:https://www.zhihu.com/question/31021366/answer/761614647
    instance_methods(all:bool):列出对象(类)内部的方法
    attr_accessor: 可以定义可存取对象的属性
class Game
	attr_accessor :price,:tile #让程序可以存取
	def initialize(title ="MeetDurian",price = 0)
		@title = title
		@price = price
	end
	def show()
		puts "游戏名字: #{@title}"
		puts "价格: #{@price}"
	end
	def otherShow()
	end 
	def self.method
		puts "静态方法不能被实例化的调用"
	end
end
puts Game.initialize(false) 
instantiate = Game.new()
instantiate.method #报错,不能被实例化

#默认用false,否则会打印出该类中全部(包括隐藏的)对象方法!
respond_to?:调查对象的方法/属性是否可用
send: 执行对象的方法

#集成上面的
new = Game.new("LOL",10000000000000);
if new.respond_to?("show") #问号一顶要加上
	new.send("show") #执行指定的对象方法
end
StoreTake = Game.new()
StoreTake.price = 150
StoreTake.title = "Another"
#目标发生变化
  1. 数组
    (1)定义
dongs=["0","1","2"]
puts dong

(2)循环

dongs.each do |dong| #ruby的循环到挺有意思的
	puts "#{dong}"
end
dongs.each_with_index do |dong,i| #返回下标
	puts "#{i} = #{dong}"
end
if dongs.respond_to?("each")
	put "dongs 是一个数组"
end
  1. Ruby的操作符和大部分的编程语言一样,所以不必花费太多时间学习!可以在终端打开irb进行实验。
  2. 字符串(重点)
#运算符 + 表示两个字符串链接
a="a"
b="b"
puts a+ "" +b
a << b #相当于 a= a + b,输出 ab
puts a*4 #输出4个a
  1. 引号的使用
    单引号和双引号是有区别,例如“A\nB”,双引号识别回车,但是单引号不识别\n
    单引号认为是字符串(统一)
puts "#{1+2+3}" # 输出6
puts '#{1+2+3}' # 输出#{1+2+3}
  1. 哈希变量(重点)
Jade={
	"A" => 1,
	"B" => 2,
	"C" => 3
}
puts Jade["C"]
#或者另一种写法,类似于JSON
Jade={
	name:"Jade",
	age:"24",
	sex:"female"
}
puts Jade[:name]+","+Jade[:age].to_s+","+Jade[:sex].to_s
__End__
两点需要注意:1. [:].to_s (类型转化)

8.类型转化
字符可以通过 to 转成数值,反之亦然。
举例:.to_i 表示转整数;.to_f表示转浮点数

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值