zoukankan      html  css  js  c++  java
  • 数组格式以及常用方法和算法

    数组:

    格式:数据类型 + [] + 变量名 = new + 数据类型 + []{};

      数组的长度固定不变,避免数组越界.

      数组越界报错:

      

    数组有哪些特点呢?

    1):同类型数据

    2):分配连续空间的一个变量

    数组的四大步骤:

    1):声明数组

    2):开空间(定义数组个数)

    3):赋值

    4):处理应用

    数组赋值的几种方法:

    1):边开空间边赋值  : int [] score = new int[]{};

    2):先声明,在开空间赋值   : int[] score;

       Score = new int[]{};

    3):边声明边赋值    : int[] score = {1,3,5,7,9}  //知道数据的值推荐使用此方法

    4):输入法赋值      : int [] score = new int[12];

                for(int i = 0; i < score.length; i++){

                System.out.println(“请输入第” + (i+1) + “个数组的值”);

              Score[i] = input.NextInt();

              }

     

    数组的输出:

      

    1.数组按升序排列:系统知道方法:Arrays.sort(数组名)

    :

    2.查找数组的最大/最小值;

    public class A_CeShi {

     

        public static void main(String[] args) {

            int[] score = { 10, 18, 94, 2, 56, 74, 3, 105 }; // 定义一个数组

            int max = score[0];// 假如最大值为第一个数

            int least = score[0];// 假如最小值为第一个数

            for (int i = 0; i < score.length; i++) {

                if (max < score[i]) { // 把定义的最大数跟每个数比较

                    max = score[i]; // 如果比最大数大则把该值赋给最大值

                }

                if (least > score[i]) { // 相反

                    least = score[i];

                }

            }

            System.out.println("该数组的最大值为:" + max);

            System.out.println("该数组的最小值为:" + least);

        }

    }

    3.插入算法:

    Scanner input = new Scanner(System.in);

     

            int[] list = new int[6];//成绩必须有序的排列,否则循环格式不成立

            list[0] = 99;

            list[1] = 85;

            list[2] = 82;

            list[3] = 63;

            list[4] = 60;     

            System.out.print("请输入要插入的学生的成绩:");

            int num = input.nextInt(); // 定义要插入的成绩

            int index = 0;// 假如位置在排名的第一个

            for (int i = 0; i < list.length; i++) { // 把插入的成绩跟每个人的成绩比较

                if (num > list[i]) {

                    index = i;

                    break;

                }

            }

            for(int j = list.length - 1;j > index;j--){  //插入的成绩位置比原成绩的位置小

                list[j] = list[j-1];                   //则把该同学的成绩位置往后移动一位

            }

            list[index] = num;

            System.out.print("插入后的学生排名是:");

            for(int i = 0;i < list.length;i++){

                System.out.print(list[i] + " ");

            }

    Arrays类常用方法(数组工具类):

  • 相关阅读:
    微信nickname乱码(emoji)及mysql编码格式设置(utf8mb4)解决的过程
    eclipse Specified VM install not found: type Standard VM, name
    eclipse中安装Open Explorer
    关于Java变量的可见性问题
    Win8&Win2012R2如何支持DOTA2输入法
    Adobe Flash player 10 提示:Error#2044:未处理的IOErrorEvent. text=Error#2036:加载未完成 的解决方法
    IntelliJ IDEA 12.1.4 解决中文乱码
    Win8.1RTM英文版安装中文语言包的两种方法
    在FlashDevelop里使用1.8版本的的TortoiseSVN
    [修复Win8.1 BUG] 解决Win8.1英文字体发虚不渲染问题
  • 原文地址:https://www.cnblogs.com/it-xiaoBai/p/8080184.html
Copyright © 2011-2022 走看看