A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

今日整理:
1 什么是数组?数组的定义有哪几种格式?
2 什么时候使用动态赋值?什么时候使用静态赋值?
3 堆中存放的是什么?栈中存放的是什么?
4 数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
5 今天有什么自己觉得比较重要的知识点?

19 个回复

倒序浏览
今日整理:
1 什么是数组?数组的定义有哪几种格式?
答:数组就是存储数据长度固定的容器,存储多个数据的数据类型要一致。
2 什么时候使用动态赋值?什么时候使用静态赋值?
答:动态赋值:初始化时只指定数组长度,由系统为数组分配初始值  静态赋值:初始化时指定每个数组元素的初始值,系统决定数组长度
3 堆中存放的是什么?栈中存放的是什么?
答:栈:存储局部变量   堆:存储new出来的内容(实体,对象)。
4 数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
答:数组越界异常:访问了数组中不存在的索引对应的元素,造成索引越界问题        数组空指针异常:访问的数组已经不再指向堆内存的数据,造成空指针异常
5 今天有什么自己觉得比较重要的知识点?
答:数组的赋值方法:数组的定义格式,动态以及静态。数组的遍历操作。
回复 使用道具 举报
今日整理:

1 什么是数组?数组的定义有哪几种格式?

       
        数组就是存储数据长度固定的容器,存储多个数据的数据类型要一致。
       

数组里面都会有默认值。


2 什么时候使用动态赋值?什么时候使用静态赋值?


        使用动态赋值时,所有元素会是默认值。
        使用静态赋值时,直接给数组赋值。

3 堆中存放的是什么?栈中存放的是什么?


        堆中存放对象。
        栈中存放方法,进栈和出栈方法里面定义的变量。


4 数组越界异常是怎么产生的?数组空指针异常是怎么产生的?


        使用数组时,使用的索引值超出了数组的最大索引。
        遍历数组时,获取数组的元素值为null,在使用这个null值会报空指针异常

5 今天有什么自己觉得比较重要的知识点?

        动态赋值和静态赋值上格式的区别。[]和{}
       
回复 使用道具 举报

今日整理:
1 什么是数组?数组的定义有哪几种格式?
数组就是存储数据长度固定的容器
定义数组分静态跟动态两种
2 什么时候使用动态赋值?什么时候使用静态赋值?
动态赋值只有数组长度,静态赋值有长度也有常量
3 堆中存放的是什么?栈中存放的是什么?
栈:当程序进入一个方法时,会为这个方法单独分配一块私属存储空间,用于存储这个方法内部的局部变量,当这个方法结束时,分配给这个方法的栈会被释放,这个栈中的变量也将随之释放。
堆:存放不在当前方法栈中的那些数据
4 数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
数组定义时,就决定了数组的元素的个数,当访问数组的下标超过或到了元素的个数,访问的数值就不是数组的元素,这就是数组越界异常,程序往往会崩溃。
5 今天有什么自己觉得比较重要的知识点?
回复 使用道具 举报
1 什么是数组?数组的定义有哪几种格式?
数组是储存数据长度固定的容器。分为动态创建数组和静态创建数组。
2 什么时候使用动态赋值?什么时候使用静态赋值?
如果已知数组的长度,需要对数组中的元素赋值,则使用动态创建数组的方式;如果已知数组的长度和具体的内容,则使用静态赋值。
3 堆中存放的是什么?栈中存放的是什么?
堆中存放的是使用new创建的对象,栈存放的是对象的引用。
4 数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
数组越界异常是数组的索引超过或等于元素的个数。数组空指针异常是当用引用数据类型的数组名加索引调用该元素的方法时,
如果该元素为null,则报空指针异常。
5 今天有什么自己觉得比较重要的知识点?
使用动态赋值的数组内的元素,默认值是0或null。
回复 使用道具 举报
张恒
1 什么是数组?数组的定义有哪几种格式?
答:数组就是存储数据长度固定的容器,保证多个数据的数据类型要一致。
  int[] arr = new int[3];
  int[] arr = new int[]{1,2,3,4,5};
  int[] arr = {1,2,3,4,5};
2 什么时候使用动态赋值?什么时候使用静态赋值?
答:数组长度,元素个数不确定时,用动态赋值
   数组里面各个元素都确定时,用静态赋值
3 堆中存放的是什么?栈中存放的是什么?
答:存储对象或者数组,new出来的都储存在堆内存里
  栈中放的是运行的方法,比如main方法等,方法要运行要进栈,
  方法有后来居上的特点,后面进栈的会出现压栈的情况
4 数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
答:比如一个数组只有3个元素,数组的索引就是0,1,2,没有3索引,因此我们不能访问数组中不存在的索引,如果访问了就会出现数组的越界异常
   arr = null;这行代码,意味着变量arr将不会再保存数组的内存地址,也就不允许再操作数组了,因此如果再访问的时候就会出现空指针异常。
5 今天有什么自己觉得比较重要的知识点?
答:第四天的学习,我认为数组很重要.
回复 使用道具 举报
1.数组是一种用于存储相同数据类型数据的存储模型
格式1:数据类型[] 变量名=new 数据类型[];
格式2::数据类型 变量名[]=new 数据类型[];
2.静态赋值:初始化时指定每个数组元素的初始值,由系统决定数组长度
动态赋值:初始化时只指定了数组的长度,由系统为数组分配初始值。
3.栈中存放基本类型 的变量数据和对象的引用;
堆中存放的是存放使用new创建的对象,全局变量。
4.数组越界异常是因为访问了数组中不存在的索引对应的元素;
数组空指针异常是访问的数组已经不再指向堆内存的数据。
5.
1:两种数组定义的格式
2.数组在计算机中的运行方式
3.堆栈的概念。
回复 使用道具 举报
1
  数组是用来存储固定长度的数据的容器
  动态创建数组,静态创建数组
2
  只有指定长度时使用动态创建数组,有指定元素时使用静态创建数组
3
  堆中存放的是对象(引用类型对应的对象)
  栈中存放的是方法
4
  数组越界异常是因为使用的索引值超出了数组的最大索引值
  遍历数组时,获取数组的元素值为null,在使用这个null值会报空指针异常
5
  JVM知识感觉挺重要的,曹老师说现在只是先了解以后才会细讲,说明这个知识还是挺有难度的,自己应该多努力消化。
回复 使用道具 举报
1.数组就是存储数据长度固定的容器
语法格式:
动态创建数组的方式:   数据类型[]  数组的名称 = new 数据类型[数组的长度];
静态创建数组的方式:   数据类型[] 数组的名称 = {element1,element2,---};
2.创建指定长度的数组用动态赋值,创建指定元素的数组用静态赋值
3.堆存放使用new创建的对象,栈存放基本类型 的变量数据和对象的引用
4.使用数组时,使用的索引值超出了数组的最大索引就会产生越界异常; 遍历数组时,获取数组的元素值为null,在使用这个null值会报空指针异常
5.jvm的内存分配和管理
回复 使用道具 举报
1 什么是数组?数组的定义有哪几种格式?
答:        数组就是存储数据长度固定的容器,存储多个数据的数据类型要一致。
数组里面都会有默认值。
两种        动态创建数组的方式:   数据类型[]  数组的名称 = new 数据类型[数组的长度];
        静态创建数组的方式:   数据类型[] 数组的名称 = {element1,element2,---};
2 什么时候使用动态赋值?什么时候使用静态赋值?
答:动态创建数组   创建指定长度的数组,用动态赋值
      静态创建数组:创建指定元素的数组,使用静态赋值

3 堆中存放的是什么?栈中存放的是什么?
答:堆放的是 数组中的元素值,并产生一个地址值,栈中存放的是数组变量名称,并把地址值赋值给数组变量名
4 数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
答:java.lang.ArrayIndexOutOfBoundsException: 数组的索引越界异常
  使用数组时,使用的索引值超出了数组的最大索引。
当下标大于大于(数组长度-1)时会出现数组越界,数组的下标是从0开始,

.java.lang.NullPointerException:空指针异常,
遍历数组时,获取数组的元素值为null,在使用这个null值会报空指针异常

5 今天有什么自己觉得比较重要的知识点?
调用数组的元素,遍历数组。
回复 使用道具 举报
1 什么是数组?数组的定义有哪几种格式?

数组就是存储数据长度固定的容器,存储多个数据的数据类型要一致。

数组里面都会有默认值。

静态数组,动态数组
2 什么时候使用动态赋值?什么时候使用静态赋值?

只有数组长度的时候使用动态赋值,有数组元素的时候用静态赋值
3 堆中存放的是什么?栈中存放的是什么?
堆放的是数组中的元素值并产生一个地址值,
栈中存放的是数组变量名称,并把地址值赋值给数组变量名
4 数组越界异常是怎么产生的?数组空指针异常是怎么产生的?

使用数组时,使用的索引值超出了数组的最大索引。
当下标大于大于(数组长度-1)时会出现数组越界,数组的下标是从0开始
遍历数组时,获取数组的元素值为null,在使用这个null值会报空指针异常
5 今天有什么自己觉得比较重要的知识点?
遍历数组
回复 使用道具 举报
今日整理:
1 什么是数组?数组的定义有哪几种格式?
   数组就是存储数据长度固定的容器,它存储的数据的数据类型需一致;
   格式一:动态创建
        数据类型[] 数组名称=new  数据类型[数组长度];
   格式一:静态创建
        数据类型[] 数组名称={数据1,数据2,数据3.......};
2 什么时候使用动态赋值?什么时候使用静态赋值?
   只需要为数组指定长度,而不需要为其指定数据时使用动态赋值;
   已知数组的数据时,在定义数组时使用静态赋值直接将数据存入数组。
3 堆中存放的是什么?栈中存放的是什么?
   堆里面存的是对象;
   栈中存放的是方法。
4 数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
   操作数组是根据索引来操作的,然而数组索引从0开始,所以数组的索引最大值是数组长度-1,如果使用索引超出最大值,就会产生越界异常。
   将null赋值给数组后,数组将不再存储内存地址,也就不能操作数组并产生空指针异常。
5 今天有什么自己觉得比较重要的知识点?
(1)IDEA中一些常用快捷键,熟练使用可以提高工作效率,如:
        psvm:生成主方法
        sout:生成输出语句
        ctrl+/:单行注释
        ctrl+shift+/:多行注释
        alt+enter:导入包名、抽取变量或抛出异常。
(2)遍历数组时要注意它的索引范围,索引从0开始而不是从1开始
(3)数组里面存放的数据必须和定义的数据类型一致
(4)使用二分法实现颠倒数组的数据
(5)理解数组的内存管理
回复 使用道具 举报
今日整理:
1 什么是数组?数组的定义有哪几种格式?
答:
数组概念: 数组就是存储数据长度固定的容器,保证多个数据的数据类型要一致。
数组的定义方式有三种:
#方式一:(创建动态数组)
*格式:
数组存储的数据类型[ ] 数组名字 = new 数组存储的数据类型[ 长度 ];
*数组定义格式详解:
-数组存储的数据类型: 创建的数组容器可以存储什么数据类型。
-[ ] : 表示数组。
-数组名字:为定义的数组起个变量名,满足标识符规范,可以使用名字操作数组。
-new:关键字,创建数组使用的关键字。
-数组存储的数据类型: 创建的数组容器可以存储什么数据类型。
-[ 长度 ]:数组的长度,表示数组容器中可以存储多少个元素。
-注意:数组有定长特性,长度一旦指定,不可更改。
*例如:
int[ ] arr = new int[3];

#方式二:(创建静态数组)
*格式:
数据类型[ ] 数组名 = new 数据类型[ ]{元素1,元素2,元素3...};
*例如:
int[ ] arr = new int[ ]{1,2,3,4,5};

#方式三:(创建静态数组)
*格式:
数据类型[ ] 数组名 = {元素1,元素2,元素3...};
*例如:
int[ ] arr = {1,2,3,4,5};



2 什么时候使用动态赋值?什么时候使用静态赋值?
答:
已知数组的长度,可以使用动态赋值
已知数组的内容,可以使用静态赋值

3 堆中存放的是什么?栈中存放的是什么?
答:
堆中存放引用类型对应的对象或者数组,new创建出来的,都保存在堆内存
栈中存放main方法,方法运行时的内存,main方法运行时,main方法进栈执行

4 数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
答:
#数据索引越界异常:
创建数组,赋值3个元素,数组的索引就是0,1,2,没有3索引,因此我们不能访问数组中不存在的索引。如果访问超过这个范围的索引值,程序运行后,将会抛出 ArrayIndexOutOfBoundsException 数组索引越界异常。在开发中,数组的越界异常是不能出现的,一旦出现了,就必须要修改我们编写的代码。

#数组空指针异常是怎么产生的?
如下代码所示:
public static void main(String[] args) {
        int[] arr = {1,2,3};
        arr = null;
        System.out.println(arr[0]);

arr = null 这行代码,意味着变量arr将不会在保存数组的内存地址,也就不允许再操作(访问)堆内存中保存的数组了,因此运行的时候会抛出 NullPointerException 空指针异常。在开发中,数组的越界异常是不能出现的,一旦出现了,就必须要修改我们编写的代码。简而言之,main方法进栈之后,找不到堆内存存放的数组的地址值,无法访问到数组,出现空指针异常

5 今天有什么自己觉得比较重要的知识点?
答:
充分理解数组的索引,数组的索引值是0~(数组长度-1),如果超出这个范围,将出现数组索引越界异常
通过数组的索引,可以向数组进行赋值,也可以提取数组中各位置的值
*数组名[索引]=数值,为数组中的元素赋值
*变量=数组名[索引],获取出数组中的元素

充分理解并熟练运用数组的遍历,通过数组的遍历,既可以寻找数组中的最大值,最小值,也可以在此基础上对数据整体进行更复杂的数学计算。
回复 使用道具 举报
1 什么是数组?数组的定义有哪几种格式?
    数组:存储数据长度固定的容器,存储多个数据的数据类型要求一致
    定义格式:
        1.数据类型[] 数组名;例如:int[] arr;
        2.数据类型 数组名[];例如:int arr[];
2 什么时候使用动态赋值?什么时候使用静态赋值?
    数组动态初始化:只给定数组的长度,由系统给出默认初始化值
    数组静态初始化:在创建数组时,直接将元素确定

    动态赋值:程序员按需求自行输入数据存储
    静态赋值:在在创建数组时,直接将数据确定下来
3 堆中存放的是什么?栈中存放的是什么?
    堆存放的是对象实例,几乎所有的对象实例都在这里分配内存
    栈存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆
4 数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
    数组越界异常:
        当数组的长度为某个固定值,索引范围即为0~固定值,当访问超过固定值的索引时,程序运行后就会出现数组越界异常。这时就需要修改代码,将错误的索引修改为正确的索引范围即可。
    数组空指针异常:
        当数组赋值为null时,数组将不会再保存数组的内存地址,也将不能再操作数组,运行程序时会抛出空指针异常。数组的越绝异常抛出时,需要修改代码,以便给数组一个真正的堆内存空间引用。
5 今天有什么自己觉得比较重要的知识点?
    a:IDEA开发工具的安装、调试、基本系统设置、文件的创建及运行、导包等
    b:IDEA中对Java程序中,快捷键的应用
    c:数组的定义格式、静态/动态初始化、索引的引用
    d:Java中数组的内存分配、数组的索引越界异常、空指针异常
    e:通过前几天学得配合数组实现中小规模的数据存储及数学题目
回复 使用道具 举报
今日整理:
1 什么是数组?数组的定义有哪几种格式?
数组是存储相同类型数据的集合;有两种格式:①动态数组:数据类型[]   数组名 = new  数据类型[数组长度];②静态数组:数据类型[]   数组名 = {数据01~~~}。
2 什么时候使用动态赋值?什么时候使用静态赋值?
以知道固定数据内容用静态,知道数据长度用动态。
3 堆中存放的是什么?栈中存放的是什么?
堆中存放对象,栈中存放方法。
4 数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
①使用数组时,使用索引值大于数组的最大索引;②遍历数组时,获取数组的数据为null时,使用这个null值。
5 今天有什么自己觉得比较重要的知识点?
①遍历数组②二分法的应用
回复 使用道具 举报
1 什么是数组?数组的定义有哪几种格式?
数组是储存数据的容器 分为动态创建数组和静态创建数组
2 什么时候使用动态赋值?什么时候使用静态赋值?
元素个数不确定时,用动态赋值
元素个数确定时,用静态赋值
3 堆中存放的是什么?栈中存放的是什么?
栈中存放基本类型 的变量数据和对象的引用;
堆中存放的是存放使用new创建的对象,全局变量。
4 数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
数组越界异常是因为使用的索引值超出了数组的最大索引值
遍历数组时,获取数组的元素值为null,在使用这个null值会报空指针异常
回复 使用道具 举报
今日整理:

1 什么是数组?数组的定义有哪几种格式?

    数组定义:数组就是存储数据长度固定的容器,存储多个数据的数据类型要一致
   
    定义格式:
        a、数据类型[] 数组名
        b、数据类型 数组名[]

2 什么时候使用动态赋值?什么时候使用静态赋值?
   
    在创建数组时,直接将元素确定的时候使用静态赋值
    在创建数组时,不确定元素的时候使用静态赋值

3 堆中存放的是什么?栈中存放的是什么?

   堆中存放的是:存放使用new创建的对象,全局变量
   栈中存放的是:存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,
        而是存放在堆(new出来的对象)或者常量池中(字符串常量对象存放的常量池中),
        局部变量【注意:(方法中的局部变量使用final修饰后,放在堆中,而不是栈中)】


4 数组越界异常是怎么产生的?数组空指针异常是怎么产生的?

    数组越界异常的产生:我们访问了超出了数组索引的范围的索引

    数组空指针异常的产生:空指针就是空引用,java空指针异常就是引用本身为空,却调用了方法,
                这个时候就会出现空指针异常


5 今天有什么自己觉得比较重要的知识点?
  A、快捷键
  生成主方法:                       psvm回车
  快速生成输出语句:               sout回车
  内容辅助代码补全 :              ctrl+alt+空格
  万能快捷键:                      alt+enter
  
  B、
   1).java.lang.ArrayIndexOutOfBoundsException: 数组的索引越界异常
   使用数组时,使用的索引值超出了数组的最大索引。
   所以遍历数组:for(int i=0;i<数组的长度;i++)
   也可以这样遍历:for(int i=0;i<=数组的长度-1;i++)

   2).java.lang.NullPointerException:空指针异常,
    遍历数组时,获取数组的元素值为null,在使用这个null值会报空指针异常

  C、JVM的内存分配和管理
回复 使用道具 举报

1 什么是数组?数组的定义有哪几种格式?
  答:数组就是存储数据长度固定的容器,存储多个数据的数据类型要一致
      数据类型[] 数组名
      数据类型 数组名[]
2 什么时候使用动态赋值?什么时候使用静态赋值?
    答:数组动态初始化就是只给定数组的长度,由系统给出默认初始化值(不知道数组内容))
        在创建数组时,直接将元素确定(自动数组内容)       
3 堆中存放的是什么?栈中存放的是什么?
答 :堆:存储对象或者数组,new来创建的,都存储在堆内存
      栈:方法运行时使用的内存,比如main方法运行,进入方法栈中执行。

4 数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
   答:数组长度为3,索引范围是0~2,但是我们却访问了一个3的索引。
       程序运行后,将会抛出ArrayIndexOutOfBoundsException 数组越界异常。在开发中,数组的越界异常是不能出现的,一旦出现了,就必       须要修改我们编写的代码。
      arr = null 这行代码,意味着变量arr将不会在保存数组的内存地址,也就不允许再操作数组了,因此运行的时候会抛出              NullPointerException 空指针异常。在开发中,数组的越界异常是不能出现的,一旦出现了,就必须要修改我们编写的代码。
5 今天有什么自己觉得比较重要的知识点?
   答:数组遍历
回复 使用道具 举报
今日整理:
1 什么是数组?数组的定义有哪几种格式?
数组是储存多个相同数据类型的值的一个容器。  两种 例如 int[] i={数据,数据,.......数据};  int i=new int[2];
2 什么时候使用动态赋值?什么时候使用静态赋值?
在不知道值的内容的时候用动态    知道的时候可以使用静态赋值。
3 堆中存放的是什么?栈中存放的是什么?
堆中存放的是对象  ,栈中存放的是基本类型变量跟对象的引用变量。
4 数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
数组的越界异常是对数组超出数组长度的下标进行操作时产生的 。  空指针异常操作是对数值下标内值为null的值进行操作的情况下产生的。
5 今天有什么自己觉得比较重要的知识点?
数组的越界异常跟空指针异常还有栈跟堆的知识我觉得是比较重要的。
回复 使用道具 举报
今日整理:
1 什么是数组?数组的定义有哪几种格式?
数组就是存储数据长度固定的容器,存储多个数据的数据类型要一致,数组里面都会有默认值。静态和动态
2 什么时候使用动态赋值?什么时候使用静态赋值?
动态:不清楚具体元素时使用动态,静态:知道具体元素和数组长度
3 堆中存放的是什么?栈中存放的是什么?
堆:对象,栈:方法
4 数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
遍历数组时,获取数组的元素值为null,在使用这个null值会报空指针异常。数组的索引越界异常:使用数组时,使用的索引值超出了数组的最大索引
5 今天有什么自己觉得比较重要的知识点?
① 生成主方法:                                     psvm回车
        快速生成输出语句:               sout回车
        内容辅助代码补全 :              ctrl+alt+空格
        单行注释:                     ctrl+/
        多行注释:                     ctrl+shift+/
        格式化代码:                   ctrl+alt+L
        复制一行代码:                 ctrl+d
         删除一行代码:                 ctrl+y
        万能快捷键:                                          alt+enter(可以导入包名,抽取变量,捕获或者抛出异常)
②        1. 使用数组可以存储和管理多个数据
        2. 数组存储和管理数据,操作很方便
③        java.lang.ArrayIndexOutOfBoundsException: 数组的索引越界异常,使用数组时,使用的索引值超出了数组的最大索引。
        java.lang.NullPointerException:空指针异常,遍历数组时,获取数组的元素值为null,在使用这个null值会报空指针异常




回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马