热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

print不自动换行,puts会自动换行

print不自动换行,puts会自动换行-1.print不自动换行,puts会自动换行,一行不够写的话,可以加\进行连接ruby代码puts62print61putshellowo
1.print不自动换行,puts会自动换行,一行不够写的话,可以加"\"进行连接
ruby 代码

puts 6/2 print 6/1 puts 'hello world' puts '我们都是'\ '中国人'
运行结果:

ruby 代码

3 6hello world 我们都是中国人
2.==,eql?,equal? 区别

==值相等 eql?值相等,类型相等 equal?值相等,内存地址相等

a=1 b=1.0 c=1.0 d=1.0 e=c puts(a==b)#值相等 puts(a.eql?(b)) #值相等,类型相等 puts(c.equal?(d))#值相等,内存地址相等 puts(c.equal?(e))

运行结果:

ruby 代码

true false false true

3. #<=>比较2个对象的大小,大于,等于,小于分别返回1,0,-1
#===右边对象是否在左边区域里,返回true或false

ruby 代码

puts("abd" <=> "acd") puts((0..5) === 10) puts((0..5) === 3.2)

运行结果:

-1 false true

4.case 分支条件语句

x=3 case x when 1..2 print "x=",x,",在1..2中" when 4..9,0 print "x=",x,",在4..9,0中" else print "x=",x,",其它可能" end 输出结果: x=3,其它可能

5.while与until

注:

A:ruby里的字符串连接用的是逗号(java里用的是加号),如:

puts("aaa","bbb")
print("aaa","bbb")

分别输出为aaa换行bbb,aaabbb

B:ruby里好像没有++,所以a++是错误的,只能a=a+1


ruby 代码

a=1 while( a < 10 ) print(a," ") a=a+1 end b=1 until( b >= 10 ) print(b," ") b=b+1 end 输出结果为: 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9
6. 几个函数说明

print "aa" if i <2
等价于
if i <2
print "aa"
end

ruby 代码

3.times{print "hi"} 1.upto(9){|i| print i if i<7>#|i|可以看成是一个临时的引用变量,供后面使用 9.downto(1){|i| print i if i<7> (1..9).each{|i| print i if i<7> 0.step(11,3){|i| print i} 运行结果: hihihi123456654321123456036

1. 等价语句
单引号里是什么就是什么,会照着输出。
ruby 代码

a=5 b="hhhh" print("a is ",a,"\n") puts("a is #{a}") puts('a is #{a}') 输出结果: a is 5 a is 5 a is #{a}
2. #ruby中如果一个类里有2个同名方法,总是后面的一个被执行

ruby 代码

#ruby支持缺省参数 def sum(a,b=5) a+b end puts sum(3,6) #输出结果为:9 puts sum(3)#输出结果为8 #ruby支持可变参数 def sum(*num) numSum = 0 num.each{|i| numSum += i} return numSum end puts sum() #输出结果为0 puts sum(3,6)#输出结果为9 puts sum(1,2,3,4,5,6,7,8,9)#输出结果为45
3. ruby中的实例变量,类变量,类方法
实例变量:每个实例独享,变量名用@开头
类变量:所有实例共享,变量名用@@开头,类似java里的static变量,但是在使用前必须要初始化。
类方法:不需要通过实例对象来调用。类方法定义方式: 类名.方法名,如:

ruby 代码

def StudentClass.student_count puts "aaa" end

如果在外部调用一个类里的常量,需要用到域作用符号"::"

4.ruby里的单例方法:给具体的某个实例对象添加方法,这个方法只属于这个实例对象的。这样的方法叫单例方法

定义单例方法,首先要生成一个实例对象,其次要在方法名前加上一个对象名和一个点号(.)

如:

ruby 代码

class Person def talk puts "hi!" end end p1 = Person.new p2 = Person.new def p2.talk #定义单例方法p2.talk puts "Here is p2." end def p2.laugh puts "ha,ha,ha..." end p1.talk p2.talk p2.laugh 输出结果为: hi! Here is p2. ha,ha,ha...
5.访问控制

ruby 代码
#访问控制
#public , protected, private
#public 方法,可以被定义它的类和其子类访问,可以被类和其子类的实例对象调用
#protected 方法,可以被定义它的类和其子类访问,不能被类和其子类的实例对象调用,但是 可以在类和其子类中制定给实例对象
#private 方法,可以被定义它的类和其子类访问,不能被类和其子类的实例对象调用,私有方法不能指定对象

#访问控制 #public , protected, private #public 方法,可以被定义它的类和其子类访问,可以被类和其子类的实例对象调用 #protected 方法,可以被定义它的类和其子类访问,不能被类和其子类的实例对象调用,但是 可以在类和其子类中制定给实例对象 #private 方法,可以被定义它的类和其子类访问,不能被类和其子类的实例对象调用,私有方法不能指定对象 class Person public def talk puts "public:talk" end def speak "protected:speak" end def laugh "private:laugh" end protected :speak private :laugh def useLaughTest(another) puts another.laugh #这里错误,私有方法不能指定对象 end def useSpeakTest(another) puts another.speak #这里可以,,protected方法可以指定对象 end end class Student < Person def useLaugh puts laugh end def useSpeak puts speak end end p1 = Person.new p1.talk #p1.speak 实例对象不能访问protected方法 #p1.laugh 实例对象不能访问private方法 p2 = Student.new p2.useLaugh p2.useSpeak
输出结果为:
public:talk
private:laugh
protected:speak

推荐阅读
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • Java SE从入门到放弃(三)的逻辑运算符详解
    本文详细介绍了Java SE中的逻辑运算符,包括逻辑运算符的操作和运算结果,以及与运算符的不同之处。通过代码演示,展示了逻辑运算符的使用方法和注意事项。文章以Java SE从入门到放弃(三)为背景,对逻辑运算符进行了深入的解析。 ... [详细]
  • 本文介绍了一个Java猜拳小游戏的代码,通过使用Scanner类获取用户输入的拳的数字,并随机生成计算机的拳,然后判断胜负。该游戏可以选择剪刀、石头、布三种拳,通过比较两者的拳来决定胜负。 ... [详细]
  • 本文介绍了如何在给定的有序字符序列中插入新字符,并保持序列的有序性。通过示例代码演示了插入过程,以及插入后的字符序列。 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • 本文讨论了如何使用IF函数从基于有限输入列表的有限输出列表中获取输出,并提出了是否有更快/更有效的执行代码的方法。作者希望了解是否有办法缩短代码,并从自我开发的角度来看是否有更好的方法。提供的代码可以按原样工作,但作者想知道是否有更好的方法来执行这样的任务。 ... [详细]
  • Ihaveaworkfolderdirectory.我有一个工作文件夹目录。holderDir.glob(*)>holder[ProjectOne, ... [详细]
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
  • 判断数组是否全为0_连续子数组的最大和的解题思路及代码方法一_动态规划
    本文介绍了判断数组是否全为0以及求解连续子数组的最大和的解题思路及代码方法一,即动态规划。通过动态规划的方法,可以找出连续子数组的最大和,具体思路是尽量选择正数的部分,遇到负数则不选择进去,遇到正数则保留并继续考察。本文给出了状态定义和状态转移方程,并提供了具体的代码实现。 ... [详细]
  • 本文介绍了一个在线急等问题解决方法,即如何统计数据库中某个字段下的所有数据,并将结果显示在文本框里。作者提到了自己是一个菜鸟,希望能够得到帮助。作者使用的是ACCESS数据库,并且给出了一个例子,希望得到的结果是560。作者还提到自己已经尝试了使用"select sum(字段2) from 表名"的语句,得到的结果是650,但不知道如何得到560。希望能够得到解决方案。 ... [详细]
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
  • This article discusses the efficiency of using char str[] and char *str and whether there is any reason to prefer one over the other. It explains the difference between the two and provides an example to illustrate their usage. ... [详细]
  • SpringMVC接收请求参数的方式总结
    本文总结了在SpringMVC开发中处理控制器参数的各种方式,包括处理使用@RequestParam注解的参数、MultipartFile类型参数和Simple类型参数的RequestParamMethodArgumentResolver,处理@RequestBody注解的参数的RequestResponseBodyMethodProcessor,以及PathVariableMapMethodArgumentResol等子类。 ... [详细]
  • 十大经典排序算法动图演示+Python实现
    本文介绍了十大经典排序算法的原理、演示和Python实现。排序算法分为内部排序和外部排序,常见的内部排序算法有插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。文章还解释了时间复杂度和稳定性的概念,并提供了相关的名词解释。 ... [详细]
  • 使用C++编写程序实现增加或删除桌面的右键列表项
    本文介绍了使用C++编写程序实现增加或删除桌面的右键列表项的方法。首先通过操作注册表来实现增加或删除右键列表项的目的,然后使用管理注册表的函数来编写程序。文章详细介绍了使用的五种函数:RegCreateKey、RegSetValueEx、RegOpenKeyEx、RegDeleteKey和RegCloseKey,并给出了增加一项的函数写法。通过本文的方法,可以方便地自定义桌面的右键列表项。 ... [详细]
author-avatar
lailai
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有