当前位置: 首页 > article >正文

Ruby 循环与迭代器

Ruby 循环与迭代器

  • 循环
  • 迭代器
    • times
    • upto
    • step

循环

。。。。

迭代器

迭代器本质上可以理解为是循环的一种类型

times

3.times do
print "Ho! "
end
=begin
Ho! Ho! Ho! 
=end

上述代码表示我们对当前 block 部分中的内容循环三次。最终,我们打印出了三个 Ho!

upto

0.upto(9) do |x|print x, " "
end
=begin
0 1 2 3 4 5 6 7 8 9
=end

上述代码表示我们将循环变量初始值设置为 0,每次循环后令其自增 1,直到值为 9 的时候停止循环。因此,最终得到的结果为 0 1 2 3 4 5 6 7 8 9

这里的 doend 之间被称作 block(区块),表示被循环语句所在的部分,do 后面的 |x| 表示循环变量的名称,这个名称用户可以自定义,比如,我们可以将其改为 i 也可以得到一样的结果。

0.upto(9) do |i|print i, " "
end
=begin
0 1 2 3 4 5 6 7 8 9
=end

同时,我们也可以不进行循环变量名称的设定,直接使用 _1 来表示接收到的第一个循环变量进行输出。

0.upto(9) doprint _1, " "
end
=begin
0 1 2 3 4 5 6 7 8 9
=end

对于含有多个循环变量的循环,可以依次使用 _1, _2, _3 来代替第 123 个循环变量。但是,对于超过 1 个循环变量的循环,推荐手动设定循环变量的名称,避免混淆。

step

上面我们介绍了循环变量自增 1 的循环方式,这里我们介绍循环变量每次自增 3 的循环方式。

0.step(12, 3) do |x| print x, " "
end
=begin
0 3 6 9 12
=end

后续,再进行添加,目前先截止到这里。

相关文章:

Ruby 循环与迭代器

Ruby 循环与迭代器 循环迭代器timesuptostep 循环 。。。。 迭代器 迭代器本质上可以理解为是循环的一种类型 times 3.times do print "Ho! " end begin Ho! Ho! Ho! end上述代码表示我们对当前 block 部分中的内容循环三次。最终,我们打印出了三个…...

力扣-39.组合总和

题目描述 给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target ,找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 ,并以列表形式返回。你可以按 任意顺序 返回这些组合。 candidates 中的 同一个 数字可以 无限制重复被…...

优化 Element UI 表格样式,隐藏滚动条但保持滚动功能

优化 Element UI 表格样式,隐藏滚动条但保持滚动功能 前言 在基于 Element UI 的项目中,el-table 是非常常用的表格组件。默认情况下,表格的滚动条可能影响页面的美观,特别是在视觉设计上希望更简洁时。本文分享一段优化的 CSS …...

线程池(ThreadPoolExecutor)实现原理和源码细节是Java高并发面试和实战开发的重点

一、线程池核心流程图 ----------------- | 提交任务 | submit/execute -----------------|v ----------------- | 判断核心线程数 | < corePoolSize&#xff1f; -----------------|Yes |Nov v [创建新线程] -----------------| 队列是否满&a…...

MongoTemplate 基础使用帮助手册

前言 MongoDB 是一种流行的 NoSQL 数据库&#xff0c;适合存储大量的非结构化数据。MongoTemplate 是 Spring Data MongoDB 中的一个核心组件&#xff0c;它提供了一组丰富的 API 来与 MongoDB 进行交互。它封装了许多常见的数据库操作&#xff0c;使开发者能够轻松执行 CRUD 操…...

图像处理:预览并绘制图像细节

前言 因为最近在搞毕业论文的事情&#xff0c;要做出一下图像细节对比图&#xff0c;所以我这里写了两个脚本&#xff0c;一个用于框选并同时预览图像放大细节&#xff0c;可显示并返回框选图像的坐标&#xff0c;另外一个是输入框选图像的坐标并将放大的细节放置在图像中&…...

力扣热题——最长相邻不相等子序列 |

题目要求从字符串数组 words 中选出一个最长的子序列&#xff0c;使得该子序列中相邻字符串对应的 groups 数组中的值不同。通过贪心算法&#xff0c;可以高效地解决该问题。具体步骤为&#xff1a;初始化一个结果列表&#xff0c;遍历 words 数组&#xff0c;检查当前字符串的…...

【抽丝剥茧知识讲解】引入mybtis-plus后,mapper实现方式

目录 前言一、传统 Mapper 接口方式二、继承 BaseMapper 的方式三、自定义通用 Mapper 的方式四、使用 MyBatis-Plus 的 ActiveRecord 模式五、使用 MyBatis-Plus 的 IService 接口六、使用建议 前言 mapper文件&#xff0c;作为Mybatis框架中定义SQL语句和映射关系的配置文件&…...

ssti刷刷刷

[NewStarCTF 公开赛赛道]BabySSTI_One 测试发现过滤关键字&#xff0c;但是特殊符号中括号、双引号、点都能用 可以考虑拼接或者编码&#xff0c;这里使用拼接 ?name{{()["__cla"~"ss__"]}}?name{{()["__cla"~"ss__"]["__ba&…...

java+selenum专题(一)

环境搭建部署篇-> 1.简介 java版的selenium&#xff0c;介绍一下java selenium自动化测试。大致和pythonselenium自动化测试差不多。基于java和selenium做自动化测试&#xff0c;因此你必须会搭建基本的开发环境&#xff0c;掌握python基本的语法和一个IDE来进行开发&…...

物体雅克比、空间雅克比、解析雅克比、几何雅克比

在机器人学中&#xff0c;雅可比矩阵是连接广义坐标速度与末端执行器速度的关键工具。根据应用场景和参考系的不同&#xff0c;雅可比矩阵可分为物体雅可比&#xff08;Body Jacobian&#xff09;、空间雅可比&#xff08;Space Jacobian&#xff09;、解析雅可比&#xff08;A…...

[逆向工程]DebugView捕获WPS日志?解析未运行WPS时Shell扩展加载的原因与解决方案(二十五)

[逆向工程]DebugView捕获WPS日志&#xff1f;解析未运行WPS时Shell扩展加载的原因与解决方案&#xff08;二十五&#xff09; 引言&#xff1a;一个“幽灵”般的日志问题 你是否在使用 DebugView 排查系统问题时&#xff0c;发现日志中频繁出现 WPS 相关模块&#xff08;如 k…...

ACM模式用Scanner和System.out超时的解决方案和原理

Hi~&#xff01;这里是奋斗的明志&#xff0c;很荣幸您能阅读我的文章&#xff0c;诚请评论指点&#xff0c;欢迎欢迎 ~~ &#x1f331;&#x1f331;个人主页&#xff1a;奋斗的明志 &#x1f331;&#x1f331;所属专栏&#xff1a;笔试强训 &#x1f4da;本系列文章为个人学…...

Java注解详解:从入门到实战应用篇

1. 引言 Java注解&#xff08;Annotation&#xff09;是JDK 5.0引入的一种元数据机制&#xff0c;用于为代码提供附加信息。它广泛应用于框架开发、代码生成、编译检查等领域。本文将从基础到实战&#xff0c;全面解析Java注解的核心概念和使用场景。 2. 注解基础概念 2.1 什…...

QML 属性动画、行为动画与预定义动画

目录 引言相关阅读本文使用的动画属性工程结构示例解析示例1&#xff1a;属性动画应用示例2&#xff1a;行为动画实现示例3&#xff1a;预定义动画 总结工程下载 引言 QML动画系统为界面元素提供了流畅的过渡效果。本文通过三个示例&#xff0c;结合属性动画(PropertyAnimatio…...

window nvidia-smi命令 Failed to initialize NVML: Unknown Error

如果驱动目录下的可以执行&#xff0c;那可能版本原因 "C:\Program Files\NVIDIA Corporation\NVSMI\nvidia-smi"复制"C:\Program Files\NVIDIA Corporation\NVSMI\nvidia-smi.exe"替换 C:\Windows\System32\nvidia-smi.exe 或者 把C:\Windows\System3…...

自学嵌入式 day19-数据结构 链表

二、线性表的链式存储 1.特点&#xff1a; &#xff08;1&#xff09;线性表链式存储结构的特点是一组任意的存储单位存储线性表的数据元素&#xff0c;存储单元可以是连续的&#xff0c;也可以不连续。可以被存储在任意内存未被占用的位置上。 &#xff08;2&#xff09;所以…...

东芝第3代SiC MOSFET助于降低应用中电源损耗

功率器件是管理和降低各种电子设备电能功耗以及实现碳中和社会的重要元器件。由于与比硅材料相比&#xff0c;碳化硅具有更高的电压和更低的损耗&#xff0c;因此碳化硅&#xff08;SiC&#xff09;被广泛视为下一代功率器件的材料。虽然碳化硅功率器件目前主要用于列车逆变器&…...

Vue 2.0学习

个人简介 &#x1f468;‍&#x1f4bb;‍个人主页&#xff1a; 魔术师 &#x1f4d6;学习方向&#xff1a; 主攻前端方向&#xff0c;正逐渐往全栈发展 &#x1f6b4;个人状态&#xff1a; 研发工程师&#xff0c;现效力于政务服务网事业 &#x1f1e8;&#x1f1f3;人生格言&…...

Mendix 中的XPath 令牌(XPath Tokens)详解

在 Mendix 中&#xff0c;XPath 令牌&#xff08;XPath Tokens&#xff09; 是一种特殊的动态参数化查询技术&#xff0c;允许你在 XPath 表达式中使用变量或上下文相关的值&#xff0c;从而实现更灵活的查询逻辑。 1. 什么是 XPath 令牌&#xff1f; XPath 令牌是 Mendix 提…...

Spring Batch学习,和Spring Cloud Stream区别

Spring Batch学习&#xff0c;和Spring Cloud Stream区别 1. 使用Spring Initializr创建项目2. 使用步骤构建作业&#xff08;Chunk 模式&#xff09;&#x1f9e9; 场景说明&#x1f9f0; 1. 示例目录结构&#x1f4c4; 2. 创建输入文件&#xff08;users.csv&#xff09;&…...

【技术原理】Linux 文件时间属性详解:Access、Modify、Change 的区别与联系

在 Linux 系统中&#xff0c;每个文件都有三个核心时间属性&#xff1a;Access Time (atime)、Modify Time (mtime) 和 Change Time (ctime)。它们分别记录文件不同维度的变更信息&#xff0c;以下是具体区别与联系&#xff1a; 一、定义与触发条件 时间属性定义触发条件示例A…...

k8s之LoadBalancer Service 解析

Kubernetes LoadBalancer Service 解析&#xff1a;IP与端口详解 服务类型与IP解析 Service 是 Kubernetes 中的资源类型&#xff0c;用来将一组 Pod 的应用作为网络服务公开。每个 Pod 都有自己的 IP&#xff0c;但是这个 IP 的生命周期与 Pod 生命周期一致&#xff0c;也就…...

Vue3项目使用ElDrawer后select方法不生效

Vue3 项目中 ElDrawer 内 ElSelect 下拉框 z-index 失效问题分析与解决方案 问题描述问题分析解决方案结论 问题描述 在 Vue3 项目中使用 Element Plus 的 ElDrawer 组件时&#xff0c;当在抽屉内部使用 ElSelect 组件&#xff0c;发现下拉选择框&#xff08;dropdown&#xff…...

PD 分离推理的加速大招,百度智能云网络基础设施和通信组件的优化实践

为了适应 PD 分离式推理部署架构&#xff0c;百度智能云从物理网络层面的「4us 端到端低时延」HPN 集群建设&#xff0c;到网络流量层面的设备配置和管理&#xff0c;再到通信组件和算子层面的优化&#xff0c;显著提升了上层推理服务的整体性能。 百度智能云在大规模 PD 分离…...

官方 Elasticsearch SQL NLPChina Elasticsearch SQL

官方的可以在kibana 控制台上进行查询&#xff1a; POST /_sql { “query”: “SELECT client_ip, status FROM logs-2024-05 WHERE status 500” } NLPChina Elasticsearch SQL就无法以在kibana 控制台上进行查询&#xff0c;但是可以使用postman接口进行查询&#xff1a;...

5月16日复盘-目标检测开端

5月16日复盘 一、图像处理之目标检测 1. 目标检测认知 ​ Object Detection&#xff0c;是指在给定的图像或视频中检测出目标物体在图像中的位置和大小,并进行分类或识别等相关任务。 ​ 目标检测将目标的分割和识别合二为一。 ​ What、Where 2. 使用场景 目标检测用于…...

读取toml, 合并,生成新文件

依次读取三个TOML文件并合并&#xff0c;后续文件覆盖之前的值&#xff0c;最终将结果写入新文件 import toml def deep_update(base_dict, update_dict): """ 递归合并字典&#xff0c;后续字典的值覆盖前者[6] """ for key, …...

mathematics-2024《Graph Convolutional Network for Image Restoration: A Survey》

推荐深蓝学院的《深度神经网络加速&#xff1a;cuDNN 与 TensorRT》&#xff0c;课程面向就业&#xff0c;细致讲解CUDA运算的理论支撑与实践&#xff0c;学完可以系统化掌握CUDA基础编程知识以及TensorRT实战&#xff0c;并且能够利用GPU开发高性能、高并发的软件系统&#xf…...

IDEA怎么汉化idea中文改回英文版

第一步:点击左上角的File&#xff0c;然后选择Setting 第二步&#xff1a;Setting页面选择 Appearance & Behavior&#xff0c;然后展开System Settings&#xff0c;然后选择 Language and Region&#xff0c;进行修改 我操作的是2024年的版本 File->Settings -> Ap…...