1. 对象数组排序
public class Test02 {public static void main(String[] args) {Dragon[] dragens={new Dragon(1,"西米郭",14,"龙变身"),new Dragon(2,"是巴拉古",30,"十字斩"),new Dragon(3,"瓦塔诺",16,"登龙剑")};Arrays.sort(dragens);for (Dragon d:dragens) {System.out.println(d);}}
}class Dragon implements Comparable{private int id;private String name;private int age;private String skill;Dragon(){}public Dragon(int id, String name, int age, String skill) {this.id = id;this.name = name;this.age = age;this.skill = skill;}public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getSkill() {return skill;}public void setSkill(String skill) {this.skill = skill;}@Overridepublic int compareTo(Object o) {//向下转型Dragon dragon=(Dragon)o;//我和别人比(我:this;别人:Object o)if (this.getAge()<dragon.getAge()){return -1; //我比她小}if(this.getAge()>dragon.getAge()){return 1; //我比她大}return 0; //我俩一样大}@Overridepublic String toString() {return "Dragon{" +"id=" + id +", name='" + name + '\'' +", age=" + age +", skill='" + skill + '\'' +'}';}
}
  1. 算法可视化参考
    https://visualgo.net/en

  2. 冒泡排序(带稳定排序示意——编号内外都要递增)

public class BubbleSort {public static void main(String[] args) {int[] a=new int[15];int[] b=new int[15];for (int i = 0; i <a.length ; i++) {a[i]=(int)(Math.random()*14+1);b[i]=i;System.out.print(a[i]+"("+b[i]+")"+"\t");}System.out.println();bubbleSort(a,b); //传址for (int i = 0; i <a.length ; i++) {System.out.print(a[i]+"("+b[i]+")"+"\t");}}public static void bubbleSort(int[] a,int[] b){boolean isSwap=true;for (int i = 0; i <a.length && isSwap ; i++) {isSwap=false;for (int j = 0; j <a.length-1-i ; j++) {if (a[j]>a[j+1]){int tmp1,tmp2;tmp1=a[j+1]; tmp2=b[j+1];a[j+1]=a[j]; b[j+1]=b[j];a[j]=tmp1; b[j]=tmp2;isSwap=true;}}}}
}
  1. try-with-resource
try(FileReader reader=new FileReader("d:/tmp.txt");){char c=(char)reader.read();char c2=(char)reader.read();System.out.println(""+c+c2);
}catch(Exception e){e.printStackTrace();
}

JDK7之后新增了try-with-resource。它可以自动关闭实现了AutoClosable接口的类。实现类需要实现close()方法。try-with-resource将try-catch-finally简化为try-catch,这其实是一种语法糖,编译时会自动转化为try-catch-finally语句。

java基础性代码拾遗-1(数组和排序)相关推荐

  1. Java 实现快速排序法对数组进行排序

     快速排序是对冒泡排序的一种改进,其排序速度相对较快. 基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据要小,然后再按照这个方法对这两部分数据分别 ...

  2. java对数组进行排序

    通过Arrays类的静态sort()方法可以实现对数组的排序.sort()方法提供了多种重载形式,可对任意类型的数组进行升序排序. import java.util.Arrays; public cl ...

  3. python数组从小到大排序_Python 实现将数组值按从小到大的顺序排列

    一.个人理解可分为 5 步来实现: 1.函数 selectionSort 获取数组值后赋值到数组 arr 并传递到函数 findSmallest 查找当前 arr 的最小值. 2.函数 findSma ...

  4. java基数排序 数组_万字长文带你掌握Java数组与排序,代码实现原理都帮你搞明白!...

    查找元素索引位置 基本查找 根据数组元素找出该元素第一次在数组中出现的索引 public class TestArray1 { public static void main(String[] arg ...

  5. java字符串数组排序_在Java中对字符串数组进行排序

    允许用户使用字符串数组.他们可以向数组添加字符串,从数组中删除字符串,搜索数组中的字符串,最终他们将能够对数组进行排序.分类是搞砸我的原因.我尝试过几种不同的方法.第一种方法是将数组转换为ArrayL ...

  6. java使用数组排序方法_java数组中的排序问题(冒泡排序方法的实现,及内置排序算法的应用)...

    在编程过程中对数组的运用也是很关键的,我们往往需要利用到数组,其中有一点就是当涉及到数组的排序问题,我们应该如何解决? 今天我来介绍两种常用的排序方法 一,冒泡排序序法 冒泡排序的原理: 1.比较相邻 ...

  7. JAVA学习-数组元素排序

    JAVA实现数组元素排序,把数组中已知的10个数字由小到大排序后输出 代码: public class ArraryRank {//定义公共类public static void main(Strin ...

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

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

  9. [转载] java中对数组进行排序_如何在Java中对数组排序

    参考链接: Java中main()的有效变体 java中对数组进行排序 Java Array is like a container that can hold a fixed number of t ...

最新文章

  1. flask_restplus的fields中怎么定义字典_Quora | 成功的定义是什么?
  2. double free or corruption (fasttop)
  3. 使用FCN做图像语义分割(实践篇)
  4. 重温2 在Activity中使用Menu
  5. 冯诺依曼计算机结构教案,冯诺依曼结构的计算机-同济大学精品课程.PPT
  6. Jackson第二篇【从JSON字符串中取值】
  7. Udacity数据集
  8. dcs常用的冗余方式_冗余技术在DCS平台应用分析
  9. 解决ping值波动,一下20ms,一下上千ms的问题。
  10. 老A:什么是抖音弹幕互动游戏,玩法以及如何参与
  11. 销售凭证、客户主数据相关表
  12. 定时任务Alarm的深入理解
  13. Android系统USB读卡器
  14. jmeter压测学习28-监听器之用表格察看结果(View Results in Table)
  15. YC++编译器最新版主要功能及特点简介, 请广大的编程爱好者试用,并且希望能提出更多宝贵意见,使此软件更加完善。谢谢!
  16. linux 设置开机自启动服务命令,linux开机自启动服务优化设置命令
  17. 跟着老猫来搞GO——工欲善其事必先利器
  18. 使用Chrome浏览器解密Base64
  19. 年会活跃微信群小游戏有哪些?塔防小游戏经典玩法讲解
  20. bigquant量化平台笔记

热门文章

  1. 自定义类组件无法ref的解决方法 React
  2. 地区做社区团购都是怎么做和怎么去转化
  3. No.58-HackTheBox-windows-Silo-Walkthrough渗透学习
  4. html5 游戏 黑屏,只狼进游戏黑屏怎么办?黑屏问题解决方法介绍
  5. 袅袅仙气清丽脱俗——同人立绘征集大赛龙灵雪·金奖
  6. 从零开始学微信小程序(不是教程·网络请求Request·GET)
  7. 重大突破!中国量子计算机“九章”问世!速度超谷歌“量子霸权”100亿倍
  8. 在html中怎么去掉自动编号,Word中取消自动编号如何操作
  9. JavaScript装饰器
  10. java反射案例实战