zoukankan      html  css  js  c++  java
  • JAVA学习(七)

    一、什么是数组及其作用?

    定义:具有相同数据类型的一个集合

    作用:存储连续的具有相同类型的数据

    二、java中如何声明和定义数组

      声明和定义的语法:

            数据类型[ ] 数组名;( int[ ] nums ; )

    或 数据类型 数组名[];  ( int nums[ ] ;)

      为数组分配空间

    数组名=new 数据类型[数组的长度]; ( nums=new int[5] ;)

      声明数组,同时分配空间

    数据类型[]数组名= new 数据类型[数组的长度];

    数据类型 数组名[]=new 数据类型[数组的长度];

              ( int[ ] nums=new int[5] ;)   ( int nums[ ]=new int[5] ;)

    三、如何读取数组中的元素— 通过下标(索引)来获取

    下标(索引)是从0开始,最大下标为  数组长度-1

    下标越界:ArrayIndexOutOfBoundsException

    int类型的数组,每个元素的默认值为0

    String类型的数组,每个元素的默认值为null

    1、获取单个元素的值

    数据类型 变量名=数组名[下标];

    2、循环读取数组中的每个元素

    数组的长度:数组名.length 属性自动计算

    for(int i=0;i<数组名.length ;i++){

                  数组名[i];

    }

    四、如何给数组中的元素赋值

    方式1(赋予数组固定值):

           声明数组,分配空间,并赋值

    (数组的长度由值的个数决定)

    数据类型  数组名[]=new 数据类型[]{值1,值2…值n};或

    数据类型 []数组名={值1,值2…值n};

    说明:[]中括号可以放在数组名前面或后面

    方式2:动态的给数组赋值(从键盘中输入)

              Scanner  input = new Scanner(System.in);

              for(int i=0;i<数组名.length ; i++){

                      String类型的数组名[i]= input.next ();     

                      int类型的数组名[i]= input.nextInt ();      

                      double类型的数组[i]=input.nextDouble();

    }

    五、数组排序问题

    使用Arrays. sort(数组名);

    实现对数组中的元素按升序或降序输出

    六、求最大值或最小值

    实现思路:将数组中的第1个元素的值,假想成最大(小)值【赋值】;然后数组中的每个元素和假想的这个最大(小)数进行比较,如果数组中的某个元素的值,比最大(小)数要大(小),将该元素的值,保存到假想的最大(小)值对应的变量中【给假想最值变量赋值】

    七、求数组中最值的位置

    1、            在循环的外面,定义变量k(赋值为0),用于保存最值的下标

    2、            在循环中,比较找出最值的同时,给变量k赋值

    八、斐波那契数列

    1,1,2,3,5,8,13,21,34……求第20个数字的值?(使用循环)

    规律:第i个 + 第(i+1)个 = 第(i+2)个

        步骤1:定义数组,数组长度为20

               int []nums=new int[20];

    步骤2:根据规律,获取第0个和第1个数的初值

               nums[0]=1;

               nums[1]=1;

    步骤3:通过循环,给数组中的所有元素赋值

                      for ( int i=0;i<nums.length-2;i++){

                             nums [i+2]=nums[i]+nums[i+1];

                      }

                      for(int i=2;i<nums.length;i++){

                             nums[i]=nums[i-2]+nums[i-1];

                      }

    步骤4:输出nums[19]的值

  • 相关阅读:
    【大厂面试】字节跳动、京东等大厂面试题分享,已拿字节offer~
    听说这十道面试题,把百分之八十的程序员都淘汰了?不是吧,阿sir
    阿里大神的刷题笔记.pdf
    在家学了6个月,拿到阿里offer!
    【面试题】2020年底总结200道带答案的常见Java面试题!
    面试一家小公司,被问了 1 个小时并发编程。。全程已记录!
    分享一份技术书籍《Java 8 》PDF版,可自行下载
    Delphi的TDataSetProvider、TDataSet、TAdoQuery、TDataSource、TDataModule控件的组合使用
    初学Delphi与sql server的存储过程
    delphi简单的分页实现(高手可以不看)
  • 原文地址:https://www.cnblogs.com/etid/p/6941685.html
Copyright © 2011-2022 走看看