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

深入解析ArrayList类中的indexOf与lastIndexOf方法的应用与区别

本文深入探讨了`ArrayList`类中`indexOf`和`lastIndexOf`方法的应用及其区别。通过详细分析这两种方法的实现机制和使用场景,帮助开发者更好地理解和选择合适的方法来处理列表中的元素定位问题。文章还提供了多个示例代码,展示了在实际开发中如何高效地利用这些方法来优化程序性能。

关于arraylist类中indexof方法与lastindexof方法的使用

 (2011-06-13 00:55:51)
转载


标签: 

c

 

arraylist

 

indexof方法

 

lastindexof

 

it

 


1.indexof方法是返回从第一个数开始查找与给定数据类型匹配的值的索引值

   index:0 1 2 3 4 5 6 7 8 9    

    value:10 9 8 7  6 5 4  3 2 1 

 

ArrayList  list = new ArrayList();

            for (int i = 10; i>0; i--)

                list.Add(i);

            //第一个匹配项从零开始的索引

           //取值为2的索引值是8

            Console.WriteLine(list .IndexOf (2));

            //从指定索引到最后一个元素的元素范围内第一个匹配的从零开始的索引

            //从索引7开始查询,当取值为2时返回索引值8

            Console.WriteLine(list.IndexOf(2,7));

            //从索引7开始查询,当取值为4时返回索引值-1,表示索引值7后不存在取值为4的索引值

      // 

            Console.WriteLine(list.IndexOf(2,7));

           //从索引9开始查询,取值为2的索引值,但是错误的,因为超出的取值范围,最大值为10

            Console.WriteLine(list.IndexOf(2,9));

            //从指定索引开始并包含指定元素数的元素范围内第一个匹配项的从零开始的索引

           //从索引7开始查询,取值为2的索引值为8,查询范围为2.当第二个2改为1时返回-1,因为在该范围内不存在取值为2的数

            Console.WriteLine(list.IndexOf(2, 7,2));

            Console.ReadLine();

 

LastIndexOf方法:

            ArrayList  list = new ArrayList();

            for (int i = 10; i>0; i--)

                list.Add(i);

            //从最后一个匹配项从零开始的索引

            Console.WriteLine(list.LastIndexOf (5));

            //从第一个元素到指定索引的元素范围内最后一个匹配的从零开始的索引

            Console.WriteLine(list.LastIndexOf(5,8));

            //包含指定元素数并在指定索引处结束的元素范围内最后一个匹配项的从零开始的索引

            Console.WriteLine(list.LastIndexOf(9, 7,7));

            Console.ReadLine();






推荐阅读
  • 本文提供了多种方法来计算给定年份和月份的起始日和结束日,并进一步探讨了如何根据年、月、周获取特定周的起始日和结束日。 ... [详细]
  • 在 Android 开发中,通过 Intent 启动 Activity 或 Service 时,可以使用 putExtra 方法传递数据。接收方可以通过 getIntent().getExtras() 获取这些数据。本文将介绍如何使用 RoboGuice 框架简化这一过程,特别是 @InjectExtra 注解的使用。 ... [详细]
  • LeetCode 690:计算员工的重要性评分
    在解决LeetCode第690题时,我记录了详细的解题思路和方法。该问题要求根据员工的ID计算其重要性评分,包括直接和间接下属的重要性。本文将深入探讨如何使用哈希表(Map)来高效地实现这一目标。 ... [详细]
  • 云函数与数据库API实现增删查改的对比
    本文将深入探讨使用云函数和数据库API实现数据操作(增删查改)的不同方法,通过详细的代码示例帮助读者更好地理解和掌握这些技术。文章不仅提供代码实现,还解释了每种方法的特点和适用场景。 ... [详细]
  • 深入解析Spring启动过程
    本文详细介绍了Spring框架的启动流程,帮助开发者理解其内部机制。通过具体示例和代码片段,解释了Bean定义、工厂类、读取器以及条件评估等关键概念,使读者能够更全面地掌握Spring的初始化过程。 ... [详细]
  • 并发编程 12—— 任务取消与关闭 之 shutdownNow 的局限性
    Java并发编程实践目录并发编程01——ThreadLocal并发编程02——ConcurrentHashMap并发编程03——阻塞队列和生产者-消费者模式并发编程04——闭锁Co ... [详细]
  • 本文探讨了在Django项目中,如何在对象详情页面添加前后导航链接,以提升用户体验。文章详细描述了遇到的问题及解决方案。 ... [详细]
  • 深入解析 Android IPC 中的 Messenger 机制
    本文详细介绍了 Android 中基于消息传递的进程间通信(IPC)机制——Messenger。通过实例和源码分析,帮助开发者更好地理解和使用这一高效的通信工具。 ... [详细]
  • 本篇文章介绍如何将两个分别表示整数的链表进行相加,并生成一个新的链表。每个链表节点包含0到9的数值,如9-3-7和6-3相加得到1-0-0-0。通过反向处理链表、逐位相加并处理进位,最终再将结果链表反向,即可完成计算。 ... [详细]
  • 在处理数值数据时,有时需要将浮点数数组中的元素转换为整数。NumPy 提供了多种方法来实现这一目标,其中 np.trunc() 函数可以方便地对数组进行取整操作。 ... [详细]
  • 本文探讨了如何利用HTML5和JavaScript在浏览器中进行本地文件的读取和写入操作,并介绍了获取本地文件路径的方法。HTML5提供了一系列API,使得这些操作变得更加简便和安全。 ... [详细]
  • ListView简单使用
    先上效果:主要实现了Listview的绑定和点击事件。项目资源结构如下:先创建一个动物类,用来装载数据:Animal类如下:packagecom.example.simplelis ... [详细]
  • 本文详细介绍了如何在 Android 中使用值动画(ValueAnimator)来动态调整 ImageView 的高度,并探讨了相关的关键属性和方法,包括图片填充后的高度、原始图片高度、动画变化因子以及布局重置等。 ... [详细]
  • Logback使用小结
    1一定要使用slf4j的jar包,不要使用apachecommons的jar。否则滚动生成文件不生效,不滚动的时候却生效~~importorg.slf ... [详细]
  • [Vue.js 3.0] Guide – Scaling Up – State Management
    [Vue.js 3.0] Guide – Scaling Up – State Management ... [详细]
author-avatar
我叫yyson_836
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有