zoukankan      html  css  js  c++  java
  • java数组基础知识

    • 数组的定义:int[] array=new array[n];int array[]={, , , ,};定义了数组,JVM就会给其一个空间,数组是应用类型的数据类型,其存储方式是随机存储。
    • 数组的遍历,一般是通过循环来遍历其元素的,二维数组可以是通过霜或双重循环来遍历。数组的下标是从0开始的。
    • 数组的替换,数组提供了一个方法,两种重载的形式,此方法为fill(),可以通过此方法来填充数组或者替换数组指定位置的元素。
    public class Array_Fill {
    	public static void main(String[] args) {
    		int[] array = new int[5];// 定义一个含有五个元素的一维数组
    		Arrays.fill(array, 8);// 使用Arrays类的静态方法fill来填充数组元素
    		// 输出数组中的元素
    		for (int i = 0; i < array.length; i++) {
    			System.out.print(array[i] + " ");
    		}
    		System.out.println();
    		// 替换元素
    		Arrays.fill(array, 2, 5, 5);
    		// 输出数组
    		for (int i = 0; i < array.length; i++) {
    			System.out.print(array[i] + " ");
    		}
    
    	}
    }
    
    • 数组的排序:数组本身有Arrays类中的sort()方法,这里写几种常见的排序方法。(1)冒泡排序法
      public static void main(String[] args) {
      		Scanner in=new Scanner(System.in);
      		int i,j;//i用来存储数组的最小元素的数值,j用来该元素的位置
      		int[] array=new int[10];//定义一个长度为10的整型数组
      		int iTemp=0;//变量表示数组元素最小值
      		int iPos=0;//表示最小元素的下标
      		System.out.println("请输入十个数:");
      		for(int n=0;n<array.length;n++){//遍历输入数组的十个元素
      			array[n]=in.nextInt();
      		}
      		/*
      		 * 对数组进行排序
      		 */
      		for(i=0;i<9;i++){//外层循环
      			iTemp=array[i];//设置当前的元素为最小值
      			iPos=i;//记录最小元素的位置
      			for(j=i+1;j<10;j++){//内层循环表示要与最小元素进行比较的预测尿素以及次数
      				if(array[j]<iTemp){//如果后来的元素中有比临时最小值小的数,那么重新赋值最小值
      					iTemp=array[j];
      					iPos=j;
      				}
      				//交换最小值的位置
      				array[iPos]=array[i];
      				array[i]=iTemp;
      			}
      		}
      		//输出数组
      		System.out.println("选择排序后的从小到大的顺序是:");
      		for(int n=0;n<array.length;n++){
      			System.out.print(array[n]+"	");
      		}
      

        (2)冒泡排序法

      public class MaoPaoPaiXu {
      
      	public static void main(String[] args) {
      		Scanner in=new Scanner(System.in);
      		int i=0,j=0;//用来控制内外层循环
      		int[] array=new int[10];
      		int iTemp=0;//用来存储中间变量
      		//输入数组的十个元素
      		System.out.println("请输入10个数:");
      		for(int n=0;n<array.length;n++){
      			array[n]=in.nextInt();
      		}
      		//冒泡排序法
      		for(i=0;i<array.length-1;i++){
      			for(j=i;j<array.length-1;j++){
      				if(array[j]>array[j+1]){
      					iTemp=array[j];
      					array[j]=array[j+1];
      					array[j+1]=iTemp;
      				}
      			}
      		}
      		System.out.println("冒泡排序后:");
      		for(int n=0;n<array.length;n++){
      			System.out.print(array[n]+"	");
      		}
      	}
      

        (3)交换排序算法

      package ArraysSort;
      import java.util.Scanner;
      /**
       * 交换排序算法:交换排序算法是将每一位数与其它所有数进行比较,如果发现符合条件的数据则交换位置
       * @author Administrator
       *
       */
      
      public class JiaoHuanPaiXu {
      
      	public static void main(String[] args) {
      		Scanner in=new Scanner(System.in);
      		int i=0,j=0;
      		int[] array=new int[10];
      		int iTemp=0;
      		System.out.println("输入数组的十个数:");
      		for(int n=0;n<array.length;n++){
      			array[n]=in.nextInt();
      		}
      		//交换排序
      		for(i=0;i<array.length-1;i++){
      			for(j=i+1;j<array.length;j++){
      				if(array[i]<array[j]){
      					iTemp=array[i];
      					array[i]=array[j];
      					array[j]=iTemp;
      				}
      			}
      		}
      		System.out.println("交换排序后的顺数是:");
      		for(int n=0;n<array.length;n++){
      			System.out.print(array[n]+"	");
      		}
      
      	}
      
      }
      

        (4)插入排序法(c基础排序算法里面有)

  • 相关阅读:
    MySQL 对于千万级的大表要怎么优化?
    随便写的一些docker使用操作命令
    零基础学python大概要多久?我用了30天
    普通人学python有意义吗?意义重大
    华为私有云组件
    Mysql 调优(二)分析思路
    MySQL 调优(一)调优原则
    shell脚本获取当前时间,分钟之前时间、小时之前时间和天之前时间
    java_windows环境变量自动设置脚本
    plsql中文乱码问题解决方案
  • 原文地址:https://www.cnblogs.com/deng-c-q/p/5022273.html
Copyright © 2011-2022 走看看