4)Java容器类相关知识
2024-09-15 07:25:19
1>Array 和 Arrays:
Arrays:用来操作array的工具类,其中包含一组static函数:
equals():比较两个array 是否相等。 array拥有相同元素个数,且所有对应元素两两相等。
fill():将值填入 array中。
fill():将值填入 array中。
sort():用来对array 进行排序。
binarySearch():在排好序的 array中寻找元素。
System.arraycopy(): array的复制。
binarySearch():在排好序的 array中寻找元素。
System.arraycopy(): array的复制。
2>Collection 和 Collections
Collections.max(Collection coll); 获取集合中最大的元素。
Collections.sort(List list); 对list 中元素排序
Collections.sort(List list); 对list 中元素排序
3>设计模式与迭代器
迭代器模式(Iterator):提供一种方法顺序一个聚合对象中各个元素,而又不暴露该对象内部表示。
其主要用途是
1.不同容器均提供了同一的迭代器接口;
2.在使用容器访问容器内部内容时均使用该迭代器接口;
3.这样在更改所使用的容器时,只需要更改一下声明种类即可,原来针对另一种容器编写的代码在新的容器时仍然完全适用。
Java中的迭代器:功能比较简单,并且只能单向移动。
(1) 使用方法iterator() 要求容器返回一个 Iterator。第一次调用Iterator的 next()方法时,它返回序列的第一个元素。
注意:iterator()方法是 java.lang.Iterable接口, 被Collection继承。
(2) 使用 next()获得序列中的下一个元素。
(3) 使用 hasNext()检查序列中是否还有元素。
(4) 使用 remove()将迭代器新返回的元素删除。
Iterator是 Java迭代器最简单的实现,为 List设计的ListIterator 具有更多的功能,它可以从两个方向遍历 List,也可以从List 中插入和删除元素。
(2) 使用 next()获得序列中的下一个元素。
(3) 使用 hasNext()检查序列中是否还有元素。
(4) 使用 remove()将迭代器新返回的元素删除。
Iterator是 Java迭代器最简单的实现,为 List设计的ListIterator 具有更多的功能,它可以从两个方向遍历 List,也可以从List 中插入和删除元素。
4>Comparable接口
在 java.lang 包中,Comparable 接口适用于一个类有自然顺序的时候。假定对象集合是同一类型,该接口允许您把集合排序成自然顺序。实现Comparable接口的类不多:
类 |
排序 |
BigDecimal, BigInteger, Byte, Double, Float, Integer, Long, Short |
按数字大小排序 |
Character |
按 Unicode 值的数字大小排序 |
CollationKey |
按语言环境敏感的字符串排序 |
Date |
按年代排序 |
File |
按系统特定的路径名的全限定字符的 Unicode 值排序 |
ObjectStreamField |
按名字中字符的 Unicode 值排序 |
String |
按字符串中字符 Unicode 值排序 |
最新文章
- 偷天换日:网络劫持,网页js被伪装替换。
- MongoDB常用操作--集合2
- CDH离线数据导入solr:利用MapReduceIndexerTool将json文件批量导入到solr
- RSA加密算法的java实现
- SmartImageView
- Google java style
- GEOS库学习之五:与GDAL/OGR结合使用
- php 使用 Memcache 例子
- BZOJ K大数查询(分治)(Zjoi2013)
- HLS视频直播
- C++11 类内初始化
- Android 侧滑菜单的简单实现(SlidingMenu)二
- javascript学习笔记20160121-css选择器
- Object-C Dealloc
- 安装tcmalloc
- 新浪IP归属地API
- HDU-1994-利息计算
- 【特征匹配】BRISK原文翻译
- android点击返回键,如何做到不destory当前activity,只是stop。重新返回该activity的 时候可以直接使用,不需要创建新的activity实例
- BF匹配器
热门文章
- [ZOJ 1011] NTA (dfs搜索)
- iOS 7.0获取iphone UDID 【转】
- AngularJs 入门系列-1 使用 AngularJs 搭建页面基本框架
- 关于Android studio 相对 eclipse 优点
- Rational Functional Tester 对象文件(rftdef)合并
- javaScript 封装
- 学习总结 java 输入输出流
- TCP/IP详解学习笔记(2)-- 数据链路层
- CLRS:build_max_heap(strorage in array)
- CLRS:Insert sort in in c