20160803------排序、二维数组

排序:

//快速排序法、选择排序法、冒泡排序法

import java.util.Arrays;

public class ArraySort {
    public static void main(String[] args) {
        int arr[]={5,4,3,2,1};
//      //快速排序法
//      System.out.println("快速排序法:");
//      Arrays.sort(arr);
//      for (int i = 0; i < arr.length; i++) {
//          System.out.print(arr[i]+"  ");
//      }
//      System.out.println();
//      //选择排序法
//      System.out.println("选择排序法:");
//      for (int i = 0; i < arr.length-1; i++) {
//          int min=i;
//          for (int j = i+1; j < arr.length; j++) {
//              if(arr[min]>arr[j]){
//                  min=j;
//              }
//          }
//          if(min!=i){
//              int temp=arr[i];
//              arr[i]=arr[min];
//              arr[min]=temp;
//          }
//      }
//      for (int i = 0; i < arr.length; i++) {
//          System.out.print(arr[i]+"  ");
//      }
//      System.out.println();
//      
        //冒泡排序法(输出排序过程)
        System.out.println("冒泡排序法:");
        for (int i = 0; i < arr.length-1; i++) {
            for (int j = 0; j < arr.length-1-i; j++) {
                if(arr[j+1]<arr[j]){
                    int temp=0;
                    temp=arr[j+1];
                    arr[j+1]=arr[j];
                    arr[j]=temp;
                }
                for (int k = 0; k < arr.length; k++) {
                    System.out.print(arr[k]+" ");
                }
                System.out.println();
            }
            System.out.println();
        }
    }
}

//运行结果:

冒泡排序法:
4 5 3 2 1 
4 3 5 2 1 
4 3 2 5 1 
4 3 2 1 5 

3 4 2 1 5 
3 2 4 1 5 
3 2 1 4 5 

2 3 1 4 5 
2 1 3 4 5 

1 2 3 4 5 

( 3 ) 二维数组

  1. 定义
数据类型[][] 数组名
数据类型 数组名[][]
  1. 初始化
int arr[][] ={{1,2},{1,2,3},{4,5,6,7}};
int arr2[][]= new int[3][];
int arr3[][]=new int{{1,2},{1,2,3},{4,5,6,7}};

【除了定义的值,其他值是否为null?】

3)遍历数组

for(int i=0;i<arr.length;i++){
    for(int j=0;j<arr[i].length;j++){
        System.out.println(arr[i][j]);
    }
}

Test:

//1、二维数组的定义、初始化、遍历public class Test1 

public class Test1 {
    public static void main(String[] args){
        //二维数组的定义
        /*int arr1[][];
        int [][] arr2;*/
        //初始化
        int arr1[][] ={{1,2},{1,2,3},{4,5,6,7}};
        int arr2[][]=new int[3][];
        int arr3[][]=new int[][]{{1,2},{1,2,3},{4,5,6,7}};
        //遍历
        for (int i = 0; i < arr1.length; i++) {
            for (int j = 0; j < arr1[i].length; j++) {
                System.out.print(arr1[i][j]+"\t");
            }
            System.out.println();
        }
    }
}


//运行结果:

1   2   
1   2   3   
4   5   6   7   


//2、计算三个班级的总成绩。

public class Test2 {
    public static void main(String[] args) {
        
        int [][]arr={{66,95},{98,42,75},{23,86,65}};
        for (int i = 0; i < arr.length; i++) {
            int total=0;
            for (int j = 0; j < arr[i].length; j++) {
                total+=arr[i][j];
            }
            System.out.println("第"+(i+1)+"个班级的总成绩为:"+total);
        }
    }
}

//运行结果:

第1个班级的总成绩为:161
第2个班级的总成绩为:215
第3个班级的总成绩为:174

//3、根据输入的城市查询省份

import java.util.*;

public class Test3 {
    public static void main(String[] args) {
        
        String findCity;
        boolean isFound=false;
        Scanner scanner=new Scanner(System.in);
        String [][] citys = {
                {"广东省","广州","深圳","珠海"},
                {"江苏省","南京","无锡","苏州"},
                {"浙江省","杭州","宁波","温州"},
                {"河南省","洛阳","南阳","信阳"}
                };
        System.out.print("请输入您要找的城市:");
        findCity= scanner.next();
        outer:for (int i = 0; i < citys.length; i++) {
            for (int j = 1; j < citys[i].length; j++) {
                if(findCity.equals(citys[i][j])){
                    isFound=true;
                    System.out.println(findCity+"位于"+citys[i][0]);
                }
            }
        }
        if(!isFound){
            System.out.println("暂不支持该城市查询!");
        }
    }

}

//运行结果:

请输入您要找的城市:深圳
深圳位于广东省

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,941评论 19 139
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 35,087评论 18 399
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,733评论 0 4
  • 1.文件操作介绍 文件的作用 大家应该听说过一句话:“好记性不如烂笔头”。 不仅人的大脑会遗忘事情,计算机也会如此...
    程猿先生阅读 248评论 0 0
  • 每每论及企业管理中存在的问题点,几乎所有的人都是一堆抱怨,一堆言辞,你很难想象他们的文采如此丰富多彩!估计可以说上...
    沈鱼2009阅读 469评论 1 1

友情链接更多精彩内容