前言

在工作中使用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排序方式汇总相关推荐

  1. 打印Java数组最优雅的方式

    在逛 Stack Overflow 的时候,发现了一些访问量像‎安第斯山一样高的问题,比如说这个:打印 Java 数组最优雅的方式是什么?访问量足足有 220W+,想不到啊,这么简单的问题竟然有这么多 ...

  2. 用什么方式学java_五分钟学Java:打印Java数组最优雅的方式是什么?

    在逛 Stack Overflow 的时候,发现了一些访问量像‎安第斯山一样高的问题,比如说这个:打印 Java 数组最优雅的方式是什么?访问量足足有 220W+,想不到啊,这么简单的问题竟然有这么多 ...

  3. Java数组与八大排序

    文章目录 浅谈数组 数组初始化 知识捡漏静态初始化写法 数组操作:反转 二维数组 数组的练习:根据数组元素查找该元素第一次在数组中出现的索引 方法1:挨个遍历查找法 方法2:二分查找法 二 数组常见的 ...

  4. java数组元素的排序_java学习之数组元素排序,冒泡排序和选择排序

    java学习之数组元素排序 选择排序 *返回值类型 void *参数列表 int[] arr * 分析:选择排序 * 第一次arr[0]与arr[1-4]比较,总共比较4次 * 第二次arr[1]与a ...

  5. Java数组—三种创建方式与区别

    Java创建数组有三种方式 1. 第一种方式 int arr [ ]  = new int [5] ; 属于动态创建,声明并创建内存空间,等待赋值. //创建数组的第一种方式 //属于动态创建,声明并 ...

  6. java数组遍历最快方式_java数组遍历的方法

    对于数组来说,基本上可以看做是一些数字.我们在使用字符串的时候,有过遍历的操作,那么对应的数组也能够进行遍历.这里为大家整理了三种遍历的方法.for循环.foreach.toString(),第二种可 ...

  7. 输出 Java 数组最简单的方式

    问题 因为 Java 数组中没有 toString() 方法,所以我如果直接调用数组toStrign()方法的话,只会得到它的内存地址.像这样,显得并不人性化: int[] intArray = ne ...

  8. java数组倒序输出简单方式

    简述一个自想的Java数组倒序方法思路, 因为很简单, 要是网上有重复,多有原谅,我并不知道 我自己上网搜资料的时候,看着非常复杂.

  9. java 数组拼接_打印Java数组最优雅的方式是什么?这波操作闪瞎我

    在 Java 中,数组虽然是一个对象,但并未明确的定义这样一个类,因此也就没有覆盖 toString() 方法的机会.如果尝试直接打印数组的话,输出的结果并不是我们预期的结果.那有没有一些简单可行的方 ...

最新文章

  1. MFC获取系统当前时间
  2. git修改远程仓库关联
  3. 《信息系统项目管理师软考辅导——3年真题详解与全真模拟》主要创新点、关注点...
  4. python 中cPickle学习二
  5. 事实上着就是MAYA4.5完全手册插件篇的内容
  6. java 页面输出一个页面_java学习之:一个完整页面输出信息的过程(以输出Doctor表中信息为例)...
  7. ES6——generator与yield
  8. web.xml 详解
  9. 吉林大学研究生课程-面向对象方法2020考试复习资料
  10. MyEclipse共享项目到SVN服务器
  11. 23种PHP开发工具集合
  12. 计算机网络4小时速成:应用层,cs模型,p2p模型,DNS域名系统,文件传输协议FTP,电子邮件SMTP,万维网HTTP,动态主机配置协议DHCP
  13. (BFM2009只是公开了数据模型,与99年开山基本一样)BM2009文献翻译
  14. 跑深度模型的显卡_不止显卡!这些硬件因素也影响着你的深度学习模型性能
  15. 【预测模型】基于RLS算法求解数据预测matlab代码
  16. 小程序实现图片双滑放大缩小
  17. 大家给推荐个4k显示器吧,码农,不玩游戏,护眼第一。
  18. java jts点到面的距离_jts-空间索引
  19. 图像边缘检测 Canny边缘检测
  20. Linux C 获取系统时间秒/毫秒/微秒/纳秒

热门文章

  1. 鸿蒙红包系统,鸿蒙封神录红包版
  2. python缩进格式错误修改病句_python缩进错误,求教。
  3. 浏览器默认打开网页设置不成功
  4. 转载一篇好文章《你刚才在淘宝上买了一件东西》
  5. 邯郸市翱翔技工学校招聘启事
  6. java 酒店系统设计_基于Java的酒店管理系统的设计与实现
  7. 怎么用matlab读一张图像,利用matlab读取图像
  8. 用Python爬虫获取网络拍卖行的艺术品价格和拍卖结果
  9. 【图解算法】一次解决最短路径问题
  10. python基础教程:python怎么换行写代码