java语言实现冒泡排序:

package mytest;public class MyTest {public static void main(String[] args) {int[] a={8,5,4,3,7,2};for(int i=0;i<a.length-1;i++){for(int j=0;j<a.length-1-i;j++){if(a[j]>a[j+1]){int t=a[j];a[j]=a[j+1];a[j+1]=t;}}}for(int i=0;i<a.length;i++){System.out.print(a[i]+"\t");}}
}

执行结果如下图:

详细一点的冒泡排序,代码如下:

package mytest;public class MyTest {public static void main(String[] args) {// 使用静态初始化声明数组int[] a={8,5,4,3,7,2,9,6,1};for(int i=0;i<a.length-1;i++){for(int j=0;j<a.length-1-i;j++){if(a[j]>a[j+1]){// 交换位置int t=a[j];a[j]=a[j+1];a[j+1]=t;}}System.out.print("第" + (i+1) + "次排序的结果:");for(int j=0;j<a.length;j++){    // 循环输出System.out.print(a[j]+"\t") ;}System.out.println();}//循环遍历输出结果System.out.println("排序之后的结果为:");for(int i=0;i<a.length;i++){System.out.print(a[i]+"\t");}}
}

执行结果如下图所示:

也可从控制台输入一组数进行排序:

package mytest;import java.util.Arrays;
import java.util.Scanner;public class MyTest {public static void main(String[] args) {//数组计量int count=0;int[] arr=new int[5];//循环输入5个整数存放到数组while(count<5){Scanner sc=new Scanner(System.in);//try防止输入不是整数的try {System.out.print("请输入第"+(count+1)+"整数:");//输入的数存放到数组arr[count]=sc.nextInt();//计量加一,直到5个count++;} catch (Exception e) {//输入的不是整数,则从新输入System.out.println("请输入整数");}}System.out.println("排序前数组:"+Arrays.toString(arr));//冒泡升序排序for(int x=0;x<arr.length;x++){//冒泡排序就是后面的和前面的数对比for(int y=x+1;y<arr.length;y++){//如果是后面的大于前面的,则把前面数往后交换if(arr[x]>arr[y]){int temp=arr[y];arr[y]=arr[x];arr[x]=temp;}}}System.out.println("排序后数组:"+Arrays.toString(arr));}
}

随意输入5个数,排序结果如下图:

java面试:冒泡排序详解 (Java经典编程案例)相关推荐

  1. 8 年经验面试官详解 Java 面试秘诀!

    日前,全球知名 TIOBE 编程语言社区最新发布 11 月的编程语言排行榜,根据最新的榜单显示,相比上个月编程语言 Top 5 并没有太大的变化,其中 Java 依旧稳坐榜首,随后分别是 C.Pyth ...

  2. java 重定向 redirect_详解Java从后台重定向(redirect)到另一个项目的方法

    (1)通过ModelAndView跳转 @RequestMapping("alipayforward") public ModelAndView alipayforward(Htt ...

  3. java lock unlock_详解Java中的ReentrantLock锁

    ReentrantLock锁 ReentrantLock是Java中常用的锁,属于乐观锁类型,多线程并发情况下.能保证共享数据安全性,线程间有序性 ReentrantLock通过原子操作和阻塞实现锁原 ...

  4. java system sleep_详解Java中的sleep()和wait()的区别

    详解Java中的sleep()和wait()的区别 对于sleep()方法,我们首先要知道该方法是属于Thread类中的.而wait()方法,则是属于Object类中的. sleep()方法导致了程序 ...

  5. java中priorityqueue_详解JAVA中priorityqueue的具体使用

    Java中PriorityQueue通过二叉小顶堆实现,可以用一棵完全二叉树表示.本文从Queue接口函数出发,结合生动的图解,深入浅出地分析PriorityQueue每个操作的具体过程和时间复杂度, ...

  6. java web ip_详解Java Web如何限制访问的IP的两种方法

    前一阵子因为在做项目时碰到了这个功能,现在好好总结一下,至于为什么要限制IP访问,我就不多说了.然后百度了一下,现在主要有两种方式去限制IP访问,第一种是最简单的方便的,第二种是通过过滤器来限制访问. ...

  7. java中implement_详解JAVA中implement和extends的区别

    详解JAVA中implement和extends的区别 extends是继承父类,只要那个类不是声明为final或者那个类定义为abstract的就能继承,Java中不支持多重继承,但是可以用接口来实 ...

  8. java中getclass_详解java中this.getClass()和super.getClass()的实例

    详解java中this.getClass()和super.getClass()的实例 前言: 遇到this.getClass()和super.getClass()的返回值感到疑惑,经过探索豁然开朗. ...

  9. java ftp ftpclient_详解JAVA中使用FTPClient工具类上传下载

    详解JAVA中使用FTPClient工具类上传下载 在Java程序中,经常需要和FTP打交道,比如向FTP服务器上传文件.下载文件.本文简单介绍如何利用jakarta commons中的FTPClie ...

  10. java中断runnable_详解Java 线程中断

    一.前言 大家肯定都使用过 Java 线程开发(Thread / Runnable),启动一个线程的做法通常是: new Thread(new Runnable( @Override public v ...

最新文章

  1. Qt打开文件对话框同时选中多个文件或单个文件
  2. pin controller driver代码分析
  3. 2015.11.27---Java
  4. 标图123123666
  5. IntelliJ Idea学习笔记003---IDEA中打开Run DashBoard的方法
  6. 简单python脚本实例-超实用的 30 段 Python 案例
  7. FDDB--无约束人脸检测数据集
  8. 好用又免费的英文校对工具!英文写作就要用Wordvice AI
  9. 漂亮的CSS背景颜色
  10. 红旗h5中控台恢复出厂设置后不显示倒车影像问题
  11. 该信谁?跳槽究竟是涨工资还是毁一生
  12. 小白也能懂的DPDK技术解析
  13. mysql mgr recovering_深度理解MySQL Group Replication的RECOVERING状态
  14. temp--文件夹中的文件处理
  15. 关键点提取:face_recognition、疲劳检测、人脸校准、人脸数据库
  16. “云”溪笔谈 | 走完过渡期“沉浸式视频云”时代来临
  17. 免费字体下载,在线设计,不怕找不到好字体
  18. Excel数据上传并且导入数据库
  19. EPICS记录参考--多位二进制输入记录(mbbi)
  20. 保研/考研简历中数模竞赛的经历,就该这样写

热门文章

  1. MySQL常见面试笔试题
  2. 除了做头像NFT还有这九大用途
  3. 怎样分析crash dump(内存错误)
  4. gson序列化抛出StackOverflowError异常
  5. springBoot 的classCastException几种情况
  6. 化工——一个走向数字化的成熟行业
  7. 研报精选230419
  8. Google Go语言开发环境搭建
  9. nvidia-prime相关:
  10. VS2008安装失败解决方案(转)