#定义方法
def method
puts 'method'
end
#调用时可以带或不带()均可
method #method
method() #method
#使用参数
def methodUseArgs(arg1,arg2)
print arg1,arg2
end
#调用时可以带或不带()均可
methodUseArgs('hello',"World\n")#helloWorld
methodUseArgs 'hello',"World\n" #helloWorld
#使用默认参数
def methodUseDefaultArgs(arg1,arg2="World\n")
print arg1,arg2
end
methodUseDefaultArgs("Hello")#HelloWorld
#使用可变长度的参数
def methodUseVariableLenthArgs(*args)
puts "#{args.join(' ')}"
end
methodUseVariableLenthArgs('hello','world ')#hello world
#使用块block
def methodUseBlock(arg)
if block_given?
yield arg
else
arg
end
end
puts methodUseBlock("no block")#no block
puts methodUseBlock("no block"){|arg| arg.sub('no','')}# block
#使用&将块转为proc对象
class SampClass
def SampClass.methodConvertBlock2Proc(&proc)
@@proc=proc
end
def SampClass.executeProc(amount)
puts "pi*#{amount}->#{@@proc.call(amount)}"
end
end
SampClass.methodConvertBlock2Proc{|amount| result=amount*Math::PI}
SampClass.executeProc(5) #pi*5->15.707963267949
SampClass.executeProc(20) #pi*20->62.8318530717959
#ruby中的方法有个有趣的地方是可以返回多个值
def methodReturn2Variable
return '3Q','ruby'
end
result1,result2=methodReturn2Variable
puts result1,result2 #3Q ruby
#调用时护展数组
def method3args(arg1,arg2,arg3)
print arg1,arg2,arg3,"\n"
end
method3args(1,2,3) #123
method3args(*[1,2,3]) #123
method3args 1,*[2,3] #123
method3args *(1..3).to_a #123
#更一般更灵活的是使用lambda将一个块转换为一个proc对象
proc1=lambda{|n| n*=2}
puts proc1.class #proc
#下面的两种写法是等价的
puts (1..10).collect{|n| n*=2}.join(' ')#2 4 6 8 10 12 14 16 18 20
puts (1..10).collect(&proc1).join(' ')#2 4 6 8 10 12 14 16 18 20
#使用哈希表
def methosUseHash(hashtable)
hashtable.collect{|de| print "key:#{de[0]} value:#{de[1]}\n"}
end
methosUseHash({"key"=>"k","value"=>"v"})#key:value value:v key:key value:k
#可以省略{}
methosUseHash("key"=>"k","value"=>"v") #同上
#更进一步可以省略""号
methosUseHash(:key=>:k,:value=>:v) #同上
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/blackant2/archive/2006/12/03/1427582.aspx
分享到:
相关推荐
这个实验展示了非对称电容在高压电场中出现的力学现象。 非对称电容悬挂在悬臂梁传感器上,变压器油保持了两极的绝缘良好,高压产生的力的效应使得传感器测量的非对称电容的重量减轻。 这个实验有力的驳斥了用于解释非对称电容力学现象的离子风假说。 实验使用设备为STM32F429+HX711+悬臂梁传感器,上位机由C# WPF实现。
【资源说明】 基于以太坊区块链的车险理赔系统全部资料+详细文档.zip 【备注】 1、该项目是个人高分项目源码,已获导师指导认可通过,答辩评审分达到95分 2、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 3、本项目适合计算机相关专业(人工智能、通信工程、自动化、电子信息、物联网等)的在校学生、老师或者企业员工下载使用,也可作为毕业设计、课程设计、作业、项目初期立项演示等,当然也适合小白学习进阶。 4、如果基础还行,可以在此代码基础上进行修改,以实现其他功能,也可直接用于毕设、课设、作业等。 欢迎下载,沟通交流,互相学习,共同进步!
银行家算法 【项目资源】:包含前端、后端、移动开发、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源,毕业设计等各种技术项目的源码。包括C++、Java、python、web、C#、EDA等项目的源码。 【适用人群】:适用于希望学习不同技术领域的初学者或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。
计算机网络课后题答案
【资源说明】 基于hyperledger fabric区块链的工作流审批应用全部资料+详细文档.zip 【备注】 1、该项目是个人高分项目源码,已获导师指导认可通过,答辩评审分达到95分 2、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 3、本项目适合计算机相关专业(人工智能、通信工程、自动化、电子信息、物联网等)的在校学生、老师或者企业员工下载使用,也可作为毕业设计、课程设计、作业、项目初期立项演示等,当然也适合小白学习进阶。 4、如果基础还行,可以在此代码基础上进行修改,以实现其他功能,也可直接用于毕设、课设、作业等。 欢迎下载,沟通交流,互相学习,共同进步!
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 替换数据可以直接使用,注释清楚,适合新手
JEEWEB Mybatis版本是一款基于SpringMVC+Spring+Mybatis+Mybatis Plus的JAVA WEB敏捷开发系统.zip
毕业设计-基于微信小程序的共享雨伞租借系统项目源码,本项目是一套98分毕业设计系统,主要针对计算机相关专业的正在做毕设的学生和需要项目实战练习的学习者,也可作为课程设计、期末大作业,包含:项目源码、项目说明等。该项目可以直接作为毕设使用,项目都经过严格调试,确保可以运行! 毕业设计-基于微信小程序的共享雨伞租借系统项目源码,本项目是一套98分毕业设计系统,毕业设计-基于微信小程序的共享雨伞租借系统项目源码主要针对计算机相关专业的正在做毕设的学生和需要项目实战练习的学习者,毕业设计-基于微信小程序的共享雨伞租借系统项目源码可作为课程设计、期末大作业,包含:项目源码、项目说明等。该项目可以直接作为毕设使用,项目都经过严格调试,确保可以运行! 毕业设计-基于微信小程序的共享雨伞租借系统项目源码,本项目是一套98分毕业设计系统,毕业设计-基于微信小程序的共享雨伞租借系统项目源码主要针对计算机相关专业的正在做毕设的学生和需要项目实战练习的学习者,毕业设计-基于微信小程序的共享雨伞租借系统项目源码可作为课程设计、期末大作业,包含:项目源码、项目说明等。该项目可以直接作为毕设使用,项目都经过严格调
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 替换数据可以直接使用,注释清楚,适合新手
用Python代码实现了一个朴素贝叶斯分类器算法,代码中包含拟合函数、预测函数、简单数据运行示例。并列给出了调用sklearn中的代码。 代码解释说明的博文:https://blog.csdn.net/u013172930/article/details/144042608
项目已获导师指导并通过的高分毕业设计项目,可作为课程设计和期末大作业,下载即用无需修改,项目完整确保可以运行。 包含:项目源码、数据库脚本、软件工具等,该项目可以作为毕设、课程设计使用,前后端代码都在里面。 该系统功能完善、界面美观、操作简单、功能齐全、管理便捷,具有很高的实际应用价值。 项目都经过严格调试,确保可以运行!可以放心下载 技术组成 语言:java 开发环境:idea 数据库:MySql8.0 部署环境:maven 数据库工具:navicat
项目已获导师指导并通过的高分毕业设计项目,可作为课程设计和期末大作业,下载即用无需修改,项目完整确保可以运行。 包含:项目源码、数据库脚本、软件工具等,该项目可以作为毕设、课程设计使用,前后端代码都在里面。 该系统功能完善、界面美观、操作简单、功能齐全、管理便捷,具有很高的实际应用价值。 项目都经过严格调试,确保可以运行!可以放心下载 技术组成 语言:java 开发环境:idea 数据库:MySql8.0 部署环境:maven 数据库工具:navicat
1、资源特点 全新整理:今年全新力作,手工精心打磨。 权威数据:数据来自权威渠道,精准可靠。 放心引用:杜绝数据造假,品质保证。 2、适用人群 在校专科生、本科生、研究生、大学教师、学术科研工作者 3、适用专业 经济学、地理学、城市规划、公共政策、社会学、商业管理、工商管理等
1、资源特点 全新整理:今年全新力作,手工精心打磨。 权威数据:数据来自权威渠道,精准可靠。 放心引用:杜绝数据造假,品质保证。 2、适用人群 在校专科生、本科生、研究生、大学教师、学术科研工作者 3、适用专业 经济学、地理学、城市规划、公共政策、社会学、商业管理、工商管理等
前言 问:基于OpenCV如何找到角点,有什么思路?OpenCV方法有什么好的思路吗?找到下面的图中白色矩形的角点的方法。 其实就是用角点检测 + 轮廓分析 搞定。 OpenCV解决 基于OpenCV实验大师工具软件1.1 设计的流程如下: 最终每一步的运行结果如下: 面积计算数据跟统计结果如下: OpenCV工作流引擎SDK支持 通过导出的vm配置文件,加载到工作流引擎,可以实现流程复用,处理多张图像,支持的SDK调用代码如下: #include "main_workflow.h"#include <iostream>#include <fstream> int main(int argc, char** argv) { std::shared_ptr<QTongCoreCVWorkFlow> engine(new QTongCoreCVWorkFlow()); bool succ = engine->initWorkFlow("D:/12121.vm", "69585e470300cdb5a6910131eb639882"); if (!succ) {
数据年份:1950-2022年,年度数据 数据范围: 省级数据:全国33省份(含直辖市,香港/台湾); 城市数据:全国371城市地级市、直辖市、地区州盟 ; 区县数据:全国2876区县、市辖区、自治县、县域县级市;
项目已获导师指导并通过的高分毕业设计项目,可作为课程设计和期末大作业,下载即用无需修改,项目完整确保可以运行。 包含:项目源码、数据库脚本、软件工具等,该项目可以作为毕设、课程设计使用,前后端代码都在里面。 该系统功能完善、界面美观、操作简单、功能齐全、管理便捷,具有很高的实际应用价值。 项目都经过严格调试,确保可以运行!可以放心下载 技术组成 语言:java 开发环境:idea 数据库:MySql8.0 部署环境:maven 数据库工具:navicat
editor是由web前端研发部开发的所见即所得富文本web编辑器.zip开发
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 替换数据可以直接使用,注释清楚,适合新手
精卫 - 30年前,50年后.mp3