如何让列表迭代器从给定索引处开始?

2023-11-23

我有一个链接列表,我需要创建在列表中给定点返回迭代器的方法。我目前有一个从头部开始的迭代器:

public Iterator<E> iterator( )
{
    return new ListIterator();
}

我对另一件事的所有了解是:

public Iterator<E> iterator(int x )
{
    return new ListIterator();
}

我不确定如何利用给定的位置(x),这不会影响从头部开始的 ListIterator 构造函数。

我尝试使用 for 循环到达“x”,但意识到这不会告诉迭代器从那里开始,所以我很困惑。

Edit:

public ListIterator()
        {
            current = head; // head in the enclosing list
        }

在没有看到您的实现的情况下,执行此操作的简单方法是:

public Iterator<E> iterator(int x) {
    if (x < 0 || this.size() < x) {
        throw new IndexOutOfBoundsException();
    }

    Iterator<E> it = new ListIterator();

    for (; x > 0; --x) {
        it.next(); // ignore the first x values
    }
    return it;
}

否则,您可以遍历列表到第 x 个节点,但没有理由不能这样做。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何让列表迭代器从给定索引处开始? 的相关文章

  • 如何使用Spring WebClient进行同步调用?

    Spring Framework in 休息模板 https docs spring io spring framework docs current javadoc api org springframework web client R
  • 使用 JDBC 获取 Oracle 11g 的最后插入 ID

    我是使用 Oracle 的新手 所以我将放弃之前已经回答过的内容这个问题 https stackoverflow com questions 3131064 get id of last inserted record in oracle
  • “java.io.IOException:连接超时”和“SocketTimeoutException:读取超时”之间有什么区别

    如果我设置一个套接字 SoTimeout 并从中读取 当读取时间超过超时限制时 我会收到 SocketTimeoutException 读取超时 这是我的例子中的堆栈 java net SocketTimeoutException Read
  • 当路径的点超出视野时,Android Canvas 不会绘制路径

    我在绘制路径时遇到了 Android Canvas 的一些问题 我的情况是 我有一个相对布局工作 如地图视图 不使用 google api 或类似的东西 我必须在该视图上绘制一条路径 canvas drawPath polyPath bor
  • Base36 编码字符串?

    我一直在网上查找 但找不到解决此问题的方法 在 Python Ruby 或 Java 中 如何对以下字符串进行 Base 36 编码 nOrG9Eh0uyeilM8Nnu5pTywj3935kW 5 Ruby 以 36 为基数 s unpa
  • 文本在指定长度后分割,但不要使用 grails 打断单词

    我有一个长字符串 需要将其解析为长度不超过 50 个字符的字符串数组 对我来说 棘手的部分是确保正则表达式找到 50 个字符之前的最后一个空格 以便在字符串之间进行彻底的分隔 因为我不希望单词被切断 public List
  • Android蓝牙java.io.IOException:bt套接字已关闭,读取返回:-1

    我正在尝试编写一个代码 仅连接到运行 Android 5 0 KitKat 的设备上的 目前 唯一配对的设备 无论我尝试了多少方法 我仍然会收到此错误 这是我尝试过的最后一个代码 它似乎完成了我看到人们报告为成功的所有事情 有人能指出我做错
  • 使用链表进行堆排序

    我想知道是否有人曾经使用链表进行堆排序 如果他们可以提供代码 我已经能够使用数组进行堆排序 但尝试在链表中进行排序似乎不切实际 而且在你知道的地方很痛苦 我必须为我正在做的项目实现链接列表 任何帮助将不胜感激 我也用C 答案是 你不想在链表
  • 在 Java 中通过 XSLT 分解 XML

    我需要转换具有嵌套 分层 表单结构的大型 XML 文件
  • 我们如何测试包私有类?

    我正在看书Effective Java in Item 13 Minimize the accessibility of classes and members 它提到 为了方便测试 您可能想让类 接口或成员更易于访问 这在某种程度上是好的
  • JAVA中遍历JSON数据

    我是 JSON 新手 我使用 HTTPUrlConnections 并在 JAVA 程序中获得一些响应 响应数据将类似于 data id 1 userId 1 name ABC modified 2014 12 04 created 201
  • Play.application() 的替代方案是什么

    我是 Play 框架的新手 我想读取conf文件夹中的一个文件 所以我用了Play application classloader getResources Data json nextElement getFile 但我知道 play P
  • 如何从 Ant 启动聚合 jetty-server JAR?

    背景 免责声明 I have veryJava 经验很少 我们之前在 Ant 构建期间使用了 Jetty 6 的包装版本来处理按需静态内容 JS CSS 图像 HTML 因此我们可以使用 PhantomJS 针对 HTTP 托管环境运行单元
  • 无需登录即可直接从 Alfresco 访问文件/内容

    我的场景是这样的 我有一个使用 ALFRESCO CMS 来显示文件或图像的 Web 应用程序 我正在做的是在 Java servlet 中使用用户名和密码登录 alfresco 并且我可以获得该登录的票证 但我无法使用该票证直接从浏览器访
  • 禁用 Android 菜单组

    我尝试使用以下代码禁用菜单组 但它不起作用 菜单项仍然启用 你能告诉我出了什么问题吗 资源 菜单 menu xml menu menu
  • 如何处理 StaleElementReferenceException

    我正在为鼠标悬停工作 我想通过使用 for 循环单击每个链接来测试所有链接的工作条件 在我的程序中 迭代进行一次 而对于下一次迭代 它不起作用并显示 StaleElementReferenceException 如果需要 请修改代码 pub
  • 何时在 hibernate 中使用 DiscriminatorValue 注解

    在 hibernate 中使用 DiscriminatorValue 注释的最佳场景是什么以及何时 这两个链接最能帮助我理解继承概念 http docs oracle com javaee 6 tutorial doc bnbqn html
  • HttpClient请求设置属性问题

    我使用这个 HttpClient 库玩了一段时间 几周 我想以某种方式将属性设置为请求 不是参数而是属性 在我的 servlet 中 我想使用 Integer inte Integer request getAttribute obj 我不
  • 检查应用程序是否在 Android Market 上可用

    给定 Android 应用程序 ID 包名称 如何以编程方式检查该应用程序是否在 Android Market 上可用 例如 com rovio angrybirds 可用 而 com random app ibuilt 不可用 我计划从
  • 基于 Spring Boot 的测试中的上下文层次结构

    我的 Spring Boot 应用程序是这样启动的 new SpringApplicationBuilder sources ParentCtxConfig class child ChildFirstCtxConfig class sib

随机推荐

  • 如何使用 RDD API 在分区内排序(并避免跨分区排序)?

    Hadoop MapReduce shuffle 的默认行为是对分区内的 shuffle key 进行排序 而不是跨分区 这是使键跨分区排序的总排序 我想问如何使用 Spark RDD 实现同样的事情 在分区内排序 但不跨分区排序 RDD
  • “堆内”和“堆外”的区别

    Ehcache 谈论堆内和堆外内存 有什么不同 使用哪些 JVM 参数来配置它们 堆上存储是指将出现在 Java 堆中 并且也受 GC 影响 的对象 另一方面 堆外存储是指由 EHCache 管理的 序列化 对象 但存储在堆外 并且也不受
  • 在 iPhone 中创建 pdf 缩略图

    我是 Objective c iPhone 编程新手 我有一个应用程序 可以在 UIWebView 中成功显示 PDF 但现在我想创建 PDF 的缩略图 我的 PDF 存储在我的资源文件夹中 因此 请给我如何显示 PDF 缩略图的代码 我的
  • 绘制立方体时出现OutOfMemory异常

    我有一个绘制和旋转立方体的类 每次旋转立方体时 我都会使用立方体的新值重新加载缓冲区 public void LoadBuffer GraphicsDevice graphicsDevice buffer new VertexBuffer
  • 如何使用 Android Management API + Organizations 分发私有 Android 应用测试轨道?

    因此 我使用 Android Management API 来管理和处理应用程序到我正在使用的信息亭设备的部署 我创建了一个组织 创建了一项政策 并确保该应用程序仅限于托管的 Google Play 并将该组织分配给该应用程序 我已将一些设
  • 如何查看c中优化后的代码

    我可以使用探查器检查优化情况 可执行文件的大小以及执行所需的时间 我可以得到优化的结果 但我有这些疑问 如何获得优化的 C 代码 C 使用哪种算法或方法来优化代码 提前致谢 您可以使用该选项了解优化的想法 fdump tree optimi
  • 是否可以使用 Google Chrome 作为代理服务器?

    在我的特定网络环境中 Google Chrome 可执行文件可以通过经过身份验证的传出代理服务器访问外部网站 然而 其他可执行文件 当指向该传出代理时 无法执行此操作 我现在有一个想法 使用 Chrome 本身作为其他可执行文件的本地代理
  • 在 Oracle 中为 varchar2 字段创建序列

    我想为这个 varchar 创建一个序列 如果它是一个数字而不是 varchar 那就更容易了 在那种情况下 我可以做 seq no seq no 1 但是 当我想将列中的下一个值存储为 A0000002 而前一个值是 A0000001 将
  • 避免 SSL “您将被重定向到不安全的连接。”信息

    我有一个通过 SSL 提供服务的登录屏幕 用户填写他们的登录名 密码 这将被发布到服务器 此时我想跳出 SSL 因此我将它们重定向回没有 SSL 的同一页面 这会导致浏览器显示警告对话框 您将被重定向到不安全的连接 我怎样才能避免这种情况
  • 如何在 Yii 中使用事件

    我想在 onBeginRequest 事件中运行一些代码 我该在哪里做呢 我认为我不应该将其添加到核心库代码中 我对 Yii 完全是菜鸟 如果您想使用 onBeginRequest 和 onEndRequest 您可以通过将以下几行添加到配
  • VS 2010 中出现“没有可用的编辑器”错误

    当我尝试在 VS 2010 中选择设计器视图时 出现以下错误 没有可用的编辑器 c 用户 teadrinkinggeek 文档 视觉 工作室 2010 网站 website2 About aspx 确保该文件的应用程序 类型 aspx 已安
  • 为什么 Eclipse PHP 无法识别名称空间声明?

    当我输入 namespace ORM 时在 Eclipse 中 它用红色强调 ORM 并表示它需要括号 有没有办法让 Eclipse 识别名称空间 这可能是您的项目设置为5 1 5 2版本 您可以在以下位置更改默认值 Window gt P
  • SEL 执行选择器和参数

    当您拥有的只是一个 SEL 对象时 似乎应该有一种简单的方法来调用带有一些参数的选择器 我似乎找不到正确的语法 MyClass init SEL sel owner NSObject parent int i 10 parent perfo
  • 通过 OneToOneField 删除相关对象

    在这种情况下有什么聪明的方法来执行删除吗 class Bus models Model wheel OneToOneField Wheel class Bike models Model wheel OneToOneField Wheel
  • 为什么 Java 允许大小为 0 的数组?

    java中的数组是固定长度的 那么为什么 Java 允许大小为 0 的数组呢 String strings new String 0 这表明它是空的 IE 您可以对其进行循环 就好像它有项目并且没有结果发生一样 for int k 0 k
  • 出于安全考虑,是否有类似于 jQuery 版本的终止支持之类的内容,类似于生命周期/支持版本的终止

    出于安全原因 我们需要获取 jQuery 支持的版本 是否有类似 jQuery 版本的支持终止之类的内容 类似于 PHP 中的生命周期终止 支持版本 https www php net supported versions php 出于安全
  • HTTP 路径必须以斜杠开头吗?

    我有一个关于 HTTP 格式的问题 HTTP 请求的第一行看起来像这样 GET path to resource txt HTTP 1 1 或者换句话说 METHOD URI HTTP VERSION 是否需要URI开始于 性格使得 pat
  • PHP 子进程的私有变量访问

    所以我正在尝试解决我在设计 PHP 类时遇到的问题 我创建了一个基类 并分配了私有变量 我有扩展此基类的子类 它们通过基类的函数引用和更改这些私有变量 这是一个例子 请记住我仍然对之间的区别感到困惑private and protected
  • 如何使用 Java Regex 查找字符串中的所有重复字符序列?

    使用 Java 和 Regex 解析随机字符串以查找重复序列 考虑字符串 啊啊啊啊啊啊 我想找到一个正则表达式来查找上述字符串中的所有匹配项 aaabbaaacccbb aaabbaaacccbb 将检查字符串中是否有重复的字符序列并返回这
  • 如何让列表迭代器从给定索引处开始?

    我有一个链接列表 我需要创建在列表中给定点返回迭代器的方法 我目前有一个从头部开始的迭代器 public Iterator