惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Cisco Talos Blog
Cisco Talos Blog
K
Kaspersky official blog
T
The Exploit Database - CXSecurity.com
NISL@THU
NISL@THU
AWS News Blog
AWS News Blog
V2EX - 技术
V2EX - 技术
Google DeepMind News
Google DeepMind News
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
S
Security @ Cisco Blogs
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Recent Commits to openclaw:main
Recent Commits to openclaw:main
J
Java Code Geeks
Microsoft Azure Blog
Microsoft Azure Blog
Attack and Defense Labs
Attack and Defense Labs
Jina AI
Jina AI
The Last Watchdog
The Last Watchdog
W
WeLiveSecurity
H
Help Net Security
V
Visual Studio Blog
宝玉的分享
宝玉的分享
C
Cybersecurity and Infrastructure Security Agency CISA
T
Threat Research - Cisco Blogs
IT之家
IT之家
Hugging Face - Blog
Hugging Face - Blog
Latest news
Latest news
T
Tor Project blog
I
Intezer
美团技术团队
GbyAI
GbyAI
T
Tailwind CSS Blog
Last Week in AI
Last Week in AI
博客园 - 三生石上(FineUI控件)
Google DeepMind News
Google DeepMind News
Scott Helme
Scott Helme
Y
Y Combinator Blog
博客园 - 司徒正美
T
Tenable Blog
O
OpenAI News
N
News and Events Feed by Topic
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
V
Vulnerabilities – Threatpost
P
Palo Alto Networks Blog
博客园 - 聂微东
酷 壳 – CoolShell
酷 壳 – CoolShell
D
Darknet – Hacking Tools, Hacker News & Cyber Security
T
Threatpost
Google Online Security Blog
Google Online Security Blog
Apple Machine Learning Research
Apple Machine Learning Research
云风的 BLOG
云风的 BLOG
Help Net Security
Help Net Security

博客园 - Andrew Yin

数据访问层组件设计以及选型意识流 第四次扩展的讨论 数据访问层组件设计以及选型意识流 第三次封装(极致、极简而不简单) 数据访问层组件设计以及选型意识流 第二次封装以及各种牢骚 数据访问层组件设计以及选型意识流 第一次封装 数据访问层组件设计以及选型意识流 开篇 UTF-8, Unicode, GB2312三种编码方式解析, 深入研究汉字编码 C++中的模板实例:链表模板 一步一步学Ruby系列(二):Ruby中的函数 .NET下的AOP: PostSharp 原理分析 AST,DLR,Expression Tree-----------推荐一位牛人的博客! C# 交互式SHELL C#中的 eval System.Web.Routing命名空间代码解析(四) Route解析中用到的实体类,一些以"Segment”为名的类 System.Web.Routing命名空间代码解析(三) RouteCollection类 System.Web.Routing命名空间代码解析(二) Routing类(上) System.Web.Routing命名空间代码解析(一) RouteBase类,RouteData类,RouteValueDictionary类 ASP.NET MVC中的各种上下文对象 有关string和Cookie的几个有用的扩展方法 反射加异步,根据枚举值来异步执行方法 操作Enum的一些实用方法
一步一步学Ruby系列(一):Ruby基础知识
Andrew Yin · 2008-12-16 · via 博客园 - Andrew Yin

关于Ruby的介绍请参照:http://www.ruby-lang.org/zh_CN/about/

一、IRB

     交互式Ruby帮助和控制台程序,Windows下成为fxri。

     在IRB中可以直接执行Ruby代码。如:

irb(main):001:0> "Hello World"
=> "Hello World"

二、puts命令和nil

irb(main):002:0> puts "Hello World"
Hello World
=> nil

puts 是 Ruby 语言里用来打印的基本命令。那 => nil 是什么?其实是命令的返回值。 puts 命令永远返回 nil,nil 也是 Ruby 的空值。

三、表达式执行

前面的"Hello World"就是一个表达式,其结果就是其本身,而puts "Hello World"则可以看作是一个命令语句,其可以没有返回值(也就是返回nil).

其他的表达式执行的例子:

irb(main):003:0> 3+2
=> 5

irb(main):

004:0> 3*2
=> 6

irb(main):

005:0> 3**2
=> 9

irb(main):

006:0> Math.sqrt(9)
=> 3.0

irb(main):

007:0> a = 3 ** 2
=> 9
irb(main):00
8:0> b = 4 ** 2
=> 16
irb(main):00
9:0> Math.sqrt(a+b)
=> 5.0

**表示次方,Math.sqrt表示开平方。

四、模块的概念

即代码分组。

Math 是一个自带的数学模块。模块在 Ruby 里有两个作用。第一:把功能相似的函数放到同一个名称下。Math 模块还有 sin()tan() 这样的函数。

接下来的是一个点。点是干什么用的?点是用来告诉一个接收者它所要接受的信息。什么是信息?在这个例子里面,信息就是 sqrt(9),意思就是调用 sqrt 函数,并给它 9 作为参数。当然 sqrt 就是 “square root” 的缩写。

这个函数的返回值是 3.0。您一定发现了它不光只是3,还多了小数部分。这是因为大多数情况下,开方的结果并不是整数,所以 sqrt 始终会返回浮点数

五、变量

如果我们想记住运算结果呢?存到变量里吧。

irb(main):007:0> a = 3 ** 2
=> 9
irb(main):00
8:0> b = 4 ** 2
=> 16
irb(main):00
9:0> Math.sqrt(a+b)
=> 5.0

好了,第一篇就写到这里吧,我是边看官方文档边做的笔记,如果我的理解有错误,欢迎指正!