java 数组和List排序方式汇总
前言
在工作中使用java, 需要存储一列数据时,脑子里只剩下List一种数据类型了……因为工作场景,很多时候数据个数是位置的,那为了不会有数据溢出或是节省存储空间,List类型是最方便的。
然而,刷Leetcode的时候,很多题目给的数据,都是用数组形式提供的,于是,一开始会有一点水土不服的现象,因此,这里希望在这篇博客里,简单记录下java 数组的常规操作。
1. 数组的建立
关于数组从一维到多维的建立,下面的csdn博客介绍得非常清楚,我就不用重新再写一遍了。
Java创建数组的方法和引用。
2. List的使用
List其实是java中的抽象数据类型,使用的时候,得具体为 ArrayList<> 或 LinkedList<>, 具体方法参考下面的csdn博客 List的使用.
3. 数据排序
3.1 数组
// 测试数组Integer[] nums = new Integer[10];for(int i=0; i< nums.length; i++){nums[i] = i+10;System.out.print(nums[i] + " ");}// 降序排序System.out.println("降序排序:");Arrays.sort(nums,(a,b)->Integer.compare(b,a));for (Integer num : nums) {System.out.print(num + " ");}System.out.println();// 升序排序System.out.println("升序排序:");Arrays.sort(nums, Integer::compare); // 升序排序是默认顺序,更下面的代码等价
// Arrays.sort(nums,(a,b)->Integer.compare(a,b));for (Integer num : nums) {System.out.print(num + " ");}
输出结果:
踩坑点
如果要使用lambda表达式,数组定义的时候,要使用对象Integer, 而不能是int, 否则会报错。
3.2 ArrayList
System.out.println("ArraysList的例子:");List<Integer> numsList = new ArrayList<>();for(int i = 0; i < 10; i++){numsList.add(i * 2);System.out.print(numsList.get(i) + " ");}System.out.println();// 降序排序System.out.println("降序排序:");numsList.sort((a, b) -> Integer.compare(b, a)); // 写法1for (Integer n : numsList) {System.out.print(n + " ");}System.out.println();// 升序排序System.out.println("升序排序:");Collections.sort(numsList, (a, b) -> Integer.compare(a, b)); // 写法2for (Integer n : numsList) {System.out.print(n + " ");}
输出结果:
注意: List的排序,有两种写法。
java 数组和List排序方式汇总相关推荐
- 打印Java数组最优雅的方式
在逛 Stack Overflow 的时候,发现了一些访问量像安第斯山一样高的问题,比如说这个:打印 Java 数组最优雅的方式是什么?访问量足足有 220W+,想不到啊,这么简单的问题竟然有这么多 ...
- 用什么方式学java_五分钟学Java:打印Java数组最优雅的方式是什么?
在逛 Stack Overflow 的时候,发现了一些访问量像安第斯山一样高的问题,比如说这个:打印 Java 数组最优雅的方式是什么?访问量足足有 220W+,想不到啊,这么简单的问题竟然有这么多 ...
- Java数组与八大排序
文章目录 浅谈数组 数组初始化 知识捡漏静态初始化写法 数组操作:反转 二维数组 数组的练习:根据数组元素查找该元素第一次在数组中出现的索引 方法1:挨个遍历查找法 方法2:二分查找法 二 数组常见的 ...
- java数组元素的排序_java学习之数组元素排序,冒泡排序和选择排序
java学习之数组元素排序 选择排序 *返回值类型 void *参数列表 int[] arr * 分析:选择排序 * 第一次arr[0]与arr[1-4]比较,总共比较4次 * 第二次arr[1]与a ...
- Java数组—三种创建方式与区别
Java创建数组有三种方式 1. 第一种方式 int arr [ ] = new int [5] ; 属于动态创建,声明并创建内存空间,等待赋值. //创建数组的第一种方式 //属于动态创建,声明并 ...
- java数组遍历最快方式_java数组遍历的方法
对于数组来说,基本上可以看做是一些数字.我们在使用字符串的时候,有过遍历的操作,那么对应的数组也能够进行遍历.这里为大家整理了三种遍历的方法.for循环.foreach.toString(),第二种可 ...
- 输出 Java 数组最简单的方式
问题 因为 Java 数组中没有 toString() 方法,所以我如果直接调用数组toStrign()方法的话,只会得到它的内存地址.像这样,显得并不人性化: int[] intArray = ne ...
- java数组倒序输出简单方式
简述一个自想的Java数组倒序方法思路, 因为很简单, 要是网上有重复,多有原谅,我并不知道 我自己上网搜资料的时候,看着非常复杂.
- java 数组拼接_打印Java数组最优雅的方式是什么?这波操作闪瞎我
在 Java 中,数组虽然是一个对象,但并未明确的定义这样一个类,因此也就没有覆盖 toString() 方法的机会.如果尝试直接打印数组的话,输出的结果并不是我们预期的结果.那有没有一些简单可行的方 ...
最新文章
- MFC获取系统当前时间
- git修改远程仓库关联
- 《信息系统项目管理师软考辅导——3年真题详解与全真模拟》主要创新点、关注点...
- python 中cPickle学习二
- 事实上着就是MAYA4.5完全手册插件篇的内容
- java 页面输出一个页面_java学习之:一个完整页面输出信息的过程(以输出Doctor表中信息为例)...
- ES6——generator与yield
- web.xml 详解
- 吉林大学研究生课程-面向对象方法2020考试复习资料
- MyEclipse共享项目到SVN服务器
- 23种PHP开发工具集合
- 计算机网络4小时速成:应用层,cs模型,p2p模型,DNS域名系统,文件传输协议FTP,电子邮件SMTP,万维网HTTP,动态主机配置协议DHCP
- (BFM2009只是公开了数据模型,与99年开山基本一样)BM2009文献翻译
- 跑深度模型的显卡_不止显卡!这些硬件因素也影响着你的深度学习模型性能
- 【预测模型】基于RLS算法求解数据预测matlab代码
- 小程序实现图片双滑放大缩小
- 大家给推荐个4k显示器吧,码农,不玩游戏,护眼第一。
- java jts点到面的距离_jts-空间索引
- 图像边缘检测 Canny边缘检测
- Linux C 获取系统时间秒/毫秒/微秒/纳秒