JavaSE-12.3.4【常用API之Arrays、冒泡排序】
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 | package day3.yub4by03.p3; /* 3.5 冒泡排序原理 一种排序的方式,对要进行排序的数据中相邻的数据进行两两比较,将较大的数据放在后面, 依次对所有的数据进行操作,直至所有数据按要求完成排序 如果有n个数据进行排序,总共需要比较n-1次 每一次比较完毕,下一次的比较就会少一个数据参与 */ public class ArrayDemo { public static void main(String[] args) { int [] arr ={ 87 , 55 , 3 , 99 , 678 , 12 }; System.out.println( "before sort:" + arrToStr(arr)); /*//第1轮比较 for(int i=0; i<arr.length-1-0; i++){ //arr.length-1是为了防止下行arr[i+1]数组下标越界 if(arr[i] > arr[i+1]){ int temp = arr[i]; arr[i] = arr[i+1]; arr[i+1] = temp; } } System.out.println(arrToStr(arr)); //第2轮比较 for(int i=0; i<arr.length-1-1; i++){ if(arr[i] > arr[i+1]){ int temp = arr[i]; arr[i] = arr[i+1]; arr[i+1] = temp; } } System.out.println(arrToStr(arr)); //第3轮比较 for(int i=0; i<arr.length-1-2; i++){ if(arr[i] > arr[i+1]){ int temp = arr[i]; arr[i] = arr[i+1]; arr[i+1] = temp; } } System.out.println(arrToStr(arr));*/ for ( int x= 0 ; x<arr.length- 1 ; x++){ for ( int i= 0 ; i<arr.length- 1 -x; i++){ if (arr[i] > arr[i+ 1 ]){ int temp = arr[i]; arr[i] = arr[i+ 1 ]; arr[i+ 1 ] = temp; } } } System.out.println( "after sort:" + arrToStr(arr)); } public static String arrToStr( int [] arr){ StringBuilder sb = new StringBuilder(); sb.append( "[" ); for ( int i= 0 ; i<arr.length; i++){ if (i == arr.length- 1 ){ sb.append(arr[i]); } else { sb.append(arr[i]).append( ", " ); } } sb.append( "]" ); String s = sb.toString(); return s; } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | package day3.yub4by03.p3; import java.util.Arrays; /* 3.6 Arrays Arrays类包含了用于操作数组的各种方法(如排序和搜索等),详见API文件 Arrays在java.util下,用到时记得导包 Arrays的常用方法 public static String toString(int[] a) 返回指定数组的内容的字符串表示形式 public static void sort(int[] a) 按照数字顺序排列指定的数组 工具类(Math System Arrays ...)设计思想(通过查看它们的源码可以得出以下结论) 1、构造方法用 private 修饰 2、成员用 public static 修饰 */ public class ArraysDemo { public static void main(String[] args) { int [] arr ={ 87 , 55 , 3 , 99 , 678 , 12 }; System.out.println( "before sort:" + Arrays.toString(arr)); Arrays.sort(arr); System.out.println( "after sort:" + Arrays.toString(arr)); } } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!