zoukankan      html  css  js  c++  java
  • Java初学心得(二)

    数组概述

    一,数组基本操作

    ①一维数组的创建:数组元素类型[] 数组名字=new 数组类型[数组元素个数]  例:int []arr=new int[5];数组长度为5

    ②初始化一维数组:第一种:int []arr=new int[]{1,2,3,5,25}  第二种:int []arr={34,2,1,3};

    ③二维数组的创建:数组元素类型 [][]数组名字=new 数组元素类型[第一维长度][第二维长度]

    ④二维数组初始化:类型 arr[][]={v1,v2,v3....};创建成功后每个元素初值为0

    ⑤填充替换数组:fill(int []a,int value),将value的值赋值给数组每个元素;fill(int []a,int begin,int end,int v)区段赋值,从begin到end赋值给v

    ⑥数组排序:Arrays.sort(数组名称)

    ⑦复制数组:copyOf(数组名,int 长度)返回新数组,复制指定区间数组:copyOfRange(数组名,begin,end)从begin下标开始到end-1下标复制到新数组,返回新数组。

    ⑧数组查询:在查询之前需对数组进行sort排序,之后用Arrays.binarySearch(数组名,搜索值)返回数组下标,在指定范围内搜索:Arrays.binarySearch(数组名,begin,end,搜索值)   从begin开始到end-1进行搜索,返回下标位置

    二,数组排序算法

    ①冒泡排序:双层循环+比较+交换

    ②直接选择排序:

    package com.输入;
    import java.util.*;
    public class imput {
        public static void main(String[] args) {
            int arr[]=new int[] {1,8,9,4,5};
            for(int i=1;i<arr.length;i++)
            {
                int index=0;
                for(int j=1;j<=arr.length-i;j++)
                {
                    if(arr[j]>arr[index])
                        index=j;
                }
                int temp=arr[arr.length-i];
                arr[arr.length-i]=arr[index];
                arr[index]=temp;
            }
            for(int i=0;i<arr.length;i++)
                System.out.print(arr[i]+" ");
            
        }
    }

    反转排序:

    package com.输入;
    import java.util.*;
    public class imput {
        public static void main(String[] args) {
            int arr[]=new int[] {1,8,9,4,5};
            System.out.println("原数组为:");
            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/2;i++)
            {
                int temp=arr[i];
                arr[i]=arr[arr.length-1-i];
                arr[arr.length-1-i]=temp;
            }
            for(int i=0;i<arr.length;i++)
                System.out.print(arr[i]+" ");
        }
    }
  • 相关阅读:
    TCP全局同步
    pytest框架之fixture详细使用
    库操作和表操作
    封装之如何隐藏对象及封装的意义
    类的抽象
    组合
    在子类中重用父类的方法和属性
    类的继承和实现原理
    类的使用,对象的使用
    互联网协议的五层协议详解
  • 原文地址:https://www.cnblogs.com/xiaofengzai/p/11370803.html
Copyright © 2011-2022 走看看