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


-今天我们学习了数组,请根据自己的理解对下列问题进行回答:

今天需要掌握的知识点有:

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

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

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

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

5.参数为基本数据类型的时候,传递的是什么?参数为引用数据类型的时候,传递的是什么?

44 个回复

正序浏览
本帖最后由 许晓明 于 2018-12-4 21:44 编辑

1.什么是数组?数组的定义有哪几种格式?
答:数组是用来存储数据的容器,定义有两种,一种为动态初始化(数据类型[] 数组名称=new 数据类型[数组长度]),一种为静态初始化(数据类型[] 数组名称=new 数据类型[]{ 数组元素 })

2.什么时候使用动态赋值?什么时候使用静态赋值?
答:当仅知道数组长度不知道数组内元素时,使用动态赋值,当知道数组内的元素时,可用静态赋值

3.堆中存放的是什么?栈中存放的是什么?
答:堆中存放的是:用new创建的对象,栈中存放的是方法运行所需要的内存

4.数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
答:在程序运行过程中数组索引值超过数组长度长生的。数组名称所指向的地址值为null(空)

5.参数为基本数据类型的时候,传递的是什么?参数为引用数据类型的时候,传递的是什么?
答:参数为基本数据类型时传递的是数据值,引用数据类型作为参数传递的是地址
回复 使用道具 举报
雷均

1.什么是数组?数组的定义有哪几种格式?
数组就是用来存放多个数据的容器,数组的定义有3种形式。动态定义和静态定义以及简化版

2.什么时候使用动态赋值?什么时候使用静态赋值?
知道数组内容时使用静态赋值,不知道数组内容,只知道数组长度时用动态赋值;

3.堆中存放的是什么?栈中存放的是什么?
堆中存放的new产生的内容,栈中存放的是定义的方法名,以及堆中变量的地址值

4.数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
越界异常时由于数组的索引值超过了数组的长度;
空指针异常时由于数组存放的地址值为空,什么也没有指向;

5.参数为基本数据类型的时候,传递的是什么?参数为引用数据类型的时候,传递的是什么?
基本数据类型为参数时,传递的是具体的数值,能够直接使用,
引用类型为参数时,传递的是引用类型变量的地址值;作为返回值返回时,也是返回的地址值
回复 使用道具 举报
本帖最后由 洪烁铭 于 2018-12-4 21:43 编辑

1.数组是用来接收同一数据类型的容器。
特点:程序一旦运行,长度不可改变;储存的数据类型必须统一;数组是引用数据类型。
格式:静态初始化分为两种 1、标准格式:  数据类型[] 数组名称= new 数据类型[] {元素1,元素2,···}  2.省略格式:数据类型[] 数组名称={元素1,元素2,···} 还有动态初始化 格式为:  数据类型[] 数组名称= new 数据类型[数组长度]

2.当不确定数组内容时,就要动态赋值。相反,使用静态赋值。

3.堆当中储存的是new出来的。 栈中执行方法和储存局部变量。

4.当使用的索引值编号超过数所拥有的的索引值。
当变量不再保存地址值时,则数组空指针异常。现在遇到的情况是把null赋值给数组。

5.参数作为基本数据类型时,传递的是值;作为引用数据类型时,传递的是地址值。

回复 使用道具 举报
1.数组就是一个组合,八几个相同数据类型的数据组合在同一个盒子里面,成为一组数组。2.数组的定义有两种格式:①动态数组格式:数据类型1 []  数组名称 = new 数据类型1  [数组长度];  ②静态数组格式:数据类型1 []  数组名称 = new 数据类型1  []{数据1,数据2,...},其中可省略写为:数据类型1 []  数组名称 = {数据1,数据2,...}。

3.内存堆中存放的是都是编程定义了new的东西。内存栈中存放的是编程用到的方法,不过有个前提是main方法要先进栈,其他调用的方法才能进栈。

4.数组越界异常是已知这个数组的长度为x,而你却想要这个数组给你个长度为x+1的值,这个时候就会出现越界异常。数组空指针异常是你定义了一个数组,让这个数组等于null:比如String[] str = null,这个数组没法在内存堆中找到自己的位置,你要打印这个数组的地址值时,就会出现空指针异常。

5.参数为基本数据类型的时候,传递的是数据本身。参数为引用数据类型的时候,传递的是堆中的 地址值。
——————————————————————————————————成成
回复 使用道具 举报
1.什么是数组?数组的定义有哪几种格式?
数组就是存储一堆一样数据类型的盒子。
三种格式。动态初始化,静态初始化,和两个初始化的省略版本
静态初始化的省略版本不能分为两个步骤, 动态却可以分为两个步骤
2.什么时候使用动态赋值?什么时候使用静态赋值?
当不知道数组的内容是使用动态初始化,
当知道 数组的内容时推荐使用静态初始化

3.堆中存放的是什么?栈中存放的是什么?
堆中存放new出来的东西
栈中存放的是方法中的局部变量,

4.数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
索引时超出了内容的元素时就发生了,,数组越界异常
数组空指针是指给数组赋值了,null 所以,数组不能储存数组的内存地址

5.参数为基本数据类型的时候,传递的是什么?参数为引用数据类型的时候,传递的是什么?
基本类型传递的是数据值
引用类型传递的是内存地址
回复 使用道具 举报
赵烈刚 发表于 2018-12-4 21:20
1.什么是数组?数组的定义有哪几种格式?
数组是可以存储多个常量一个容器,动态初始化和静态初始化

好的,亲
回复 使用道具 举报
1.什么是数组?数组的定义有哪几种格式?
数组就是保存很多数据的一个容器,数组的定义有两种,一种是动态定义,和静态定义

2.什么时候使用动态赋值?什么时候使用静态赋值?
动态赋值是在知道数组长度时候定义的,静态赋值是知道具体有哪些元素,可以写在方括号中的。

3.堆中存放的是什么?栈中存放的是什么?
堆中存放new出来的东西,栈中存放数据类型和变量名


4.数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
越界异常是索引值超过数组长度,数组空指针是数组存放的地址值为空,无法在堆中找到对应的数组

5.参数为基本数据类型的时候,传递的是什么?参数为引用数据类型的时候,传递的是什
当参数为基本数据类型时传变量本身的值,当参数为引用数据类型时,传参数的地址
回复 使用道具 举报
1.数组就是存储固定长度的相同数据类型的容器。数组有静态初始化和动态初始化两种格式。
2.只知道数组长度的时候使用动态赋值,知道数组中具体元素时使用静态初始化。
3.堆中存放new创建出来的东西,栈中存放方法,方法要执行就要进栈。
4.越界异常:执行程序时使用数组是,程序中的数组索引值超过了数组的长度-1,就会产生越界异常。数组名称指向的是地址是null时会产生空指针异常。
5.参数是基本数据类型型传递的是参数的值,为引用数据类型时传递的是地址值。
回复 使用道具 举报
本帖最后由 苏志祥 于 2018-12-5 16:25 编辑


1.什么是数组?数组的定义有哪几种格式?
数组是存放同一种数据类型的容器。
两种定义格式:动态和静态,静态又细分出一种简写格式。
动态格式:数据类型[]  数组名称 = new 数据类型[数组长度];
静态格式:数据类型[]  数组名称 = new 数据类型[]  {元素1,元素2,。。。};
静态的简写格式:数据类型[]  数组名称 =  {元素1,元素2,。。。};

2.什么时候使用动态赋值?什么时候使用静态赋值?
当不确定数组内容时,使用动态赋值;反之,使用静态赋值。

3.堆中存放的是什么?栈中存放的是什么?
堆中存放的是对象或者实体。栈中存放的是局部变量,包括方法中的局部变量。

4.数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
越界异常:数组的索引值超过了相应数组的角标值。
空指针异常:数组被赋值为null时发生。

5.参数为基本数据类型的时候,传递的是什么?参数为引用数据类型的时候,传递的是什么?
参数为基本数据类型的时候,传递的是相对应的实际参数。
参数为引用数据类型的时候,传递的是相对应引用数据的地址值
回复 使用道具 举报
1.什么是数组?数组的定义有哪几种格式?
数组是用来存储统一类型的数据的容器,数组定义有三种格式,动态初始化:数据类型[] 数组名 = new 数据类型[数组长度]、
标准式静态初始化数据类型:[] 数组名 = new 数据类型[]{元素1,元素2....)和省略式静态初始化:数据类型[] 数组名 ={元素1,元素2....}

2.什么时候使用动态赋值?什么时候使用静态赋值?
如果是只给定数组长度,没有给定具体数组的内容时用动态赋值。
如果是给具体内容时,使用静态赋值比较方便,

3.堆中存放的是什么?栈中存放的是什么?
堆内存中存放的new出来的数组或对象和成员变量,栈中存放时局部方法和局部变量

4.数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
使用数组索引超过创建的数组长度就会产生数组越界异常;当定义的数组或对象为空,数组索引指向了没有对应的数组的索引的数值,就会造成空指针异常。
5.参数为基本数据类型的时候,传递的是什么?参数为引用数据类型的时候,传递的是什么?
参数为基本数据类型的时候传递是对应数据值,参数为引用数据类型的时候传递的是对应引用类型的地址值。
回复 使用道具 举报

1.什么是数组?数组的定义有哪几种格式?
数组是存储多个数据的容器,一个数组中的数据类型是一致的,数组的长度一旦确定则无法改变。
数组定义格式:1.数组存储的数据类型[] 数组名称 = new 数组存储的数据类型[数组的长度];
                             2.数组存储的数据类型[] 数组名称 = new 数组存储的数据类型[] {元素1, 元素2, ..., 元素n};
                             3.数组存储的数据类型[] 数组名称 = {元素1, 元素2, ..., 元素n};

2.什么时候使用动态赋值?什么时候使用静态赋值?
当数组要存入的内容时已知确定时用静态赋值,否则用动态。

3.堆中存放的是什么?栈中存放的是什么?
new出来的对象或者数组。
栈中存放的是变量名称,是方法运行时使用的内存。

4.数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
数组越界异常是指当数组的索引值范围超过或等于数组的长度时抛出的异常;
数组空指针异常是指没有给建立的某个数组变量赋值,导致这个数组变量不能指向某个数组

5.参数为基本数据类型的时候,传递的是什么?参数为引用数据类型的时候,传递的是什么?
参数为基本数据类型的时候,传递的是数组本身的数据值。参数为引用数据类型的时候,传递的是地址哈希值
回复 使用道具 举报 1 0
1.什么是数组?数组的定义有哪几种格式?
数组就是很多数据的集合,定有的格式有三种,动态方式,静态方式以及静态的省略模式。
2.什么时候使用动态赋值?什么时候使用静态赋值?知道数组长度但是不知道数组内容的时候使用动态赋值;知道数组内的具体内容时用静态赋值。
3.堆中存放的是什么?栈中存放的是什么?
程序中new出来的对象存放在堆中,栈中存放的是方法中的局部变量。
4.数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
利用索引值访问数组当索引值超出数组本身的长度时,这时候没有数据能给访问就会报错,即数组越界异常。访问被赋值为null的数组时会发生空指针异常。
5.参数为基本数据类型的时候,传递的是什么?参数为引用数据类型的时候,传递的是什么?

作为基本数据类型的时候传递的是数据结果,作为引用数据类型的时候传递的也是地址值。
回复 使用道具 举报
1.什么是数组?数组的定义有哪几种格式?

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

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

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

5.参数为基本数据类型的时候,传递的是什么?参数为引用数据类型的时候,传递的是什么?
回复 使用道具 举报
1.什么是数组?数组的定义有哪几种格式?
是一种容器可以存放多个数值
有静态和动态两种格式
数据类型[] 数据名 =new 数据类型 []{元素1,元素2...}
数据类型[] 数据名 =new 数据类型 [数据长度]
2.什么时候使用动态赋值?什么时候使用静态赋值
不知道数组元素时使用动态赋值。
明确数组元素用静态赋值
3.堆中存放的是什么?栈中存放的是什么?
堆中存放的时new出来的地址值
栈中存放的是方法的运行
4.数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
越界异常是因为超过了数组的索引值
空指针是因为数组内没有地址值而被虚拟机回收
5.参数为基本数据类型的时候,传递的是什么?参数为引用数据类型的时候,传递的是什么
基本的时候传递的是数值本身。
引用的时候传递的是地址值。
回复 使用道具 举报
1.什么是数组?数组的定义有哪几种格式?
   数组:就是保存一串引用数据类型或基本数据类型的的一个盒子,也可以为空。并且长度固定,数据类型固定。
   定义的格式:动态数组,静态数组。
2.什么时候使用动态赋值?什么时候使用静态赋值?
   数组元素不确定的情况下,使用动态赋值。指定长度。
   数组元素确定的情况下,使用静态赋值。指定元素,当然也包括了长度。
3.堆中存放的是什么?栈中存放的是什么?
   堆中存放的是数组中每个索引对应的元素值。
   栈中存放着创建的数组容器名称,有对应的地址值。

4.数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
  数组越界异常:调取索引对应的元素,超出了数组索引的最大值。
  数组空指针异常:数值无内容。还继续调用。
5.参数为基本数据类型的时候,传递的是什么?参数为引用数据类型的时候,传递的是什么?
   参数为基本数据类型:传递的是基本数据类型。
   参数为引用数据类型:传递的是引用数据类型。
回复 使用道具 举报
1.什么是数组?数组的定义有哪几种格式?
数组就是存储数据长度固定的容器。动态初始化和静态初始化。
2.什么时候使用动态赋值?什么时候使用静态赋值?
不清楚数据时用动态赋值,知道数据时用静态赋值。
3.堆中存放的是什么?栈中存放的是什么?
堆中存放存储对象或者数。栈中存放的是方法。
4.数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
数组越界异常是访问数组中不存在的索引。数组空指针异常,变量赋值为空值,不允许再操作数组。
5.参数为基本数据类型的时候,传递的是什么?参数为引用数据类型的时候,传递的是什么?

参数为基本数据类型的时候,传递的是指向的数据。
数组作为方法参数传递,传递的参数是数组内存的地址

回复 使用道具 举报

1.什么是数组?数组的定义有哪几种格式?
数组是用来存储统一类型的数据的容器。数组定义有三种格式,动态初始化:数据类型[ ] 数组名 = new 数据类型[数组长度]、
标准式静态初始化数据类型:[ ] 数组名 = new 数据类型[]{元素1,元素2....)和省略式静态初始化:数据类型[ ] 数组名 ={元素1,元素2....}。

2.什么时候使用动态赋值?什么时候使用静态赋值?
如果是只给定数组长度,没有给定数组的具体内容时用动态赋值。
如果是给具体内容时,使用静态赋值比较方便,

3.堆中存放的是什么?栈中存放的是什么?
堆内存中存放的new出来的数组或对象和成员变量,栈中存放时局部方法和局部变量。

4.数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
使用数组索引超过创建的数组长度就会产生数组越界异常;当定义的数组或对象为空,数组索引指向了没有对应的数组的索引的数值,就会造成空指针异常。
5.参数为基本数据类型的时候,传递的是什么?参数为引用数据类型的时候,传递的是什么?
参数为基本数据类型的时候传递是对应数据值,参数为引用数据类型的时候传递的是对应的引用类型的地址值。


回复 使用道具 举报 1 0
今天需要掌握的知识点有:

1.什么是数组?数组的定义有哪几种格式?
答:数组就是存储数据长度的容器。定义格式:1.数组存储的数据类型[] 数组名字=new 数组存储的数据类型[长度];
2.数据类型[] 数组名=new 数据类型[]{元素1,元素2,...};
3数据类型[] 数组名={元素1,元素2,...};
2.什么时候使用动态赋值?什么时候使用静态赋值?
给出具体元素的使用用静态赋值,只知道元素长度的情况下用动态赋值。
3.堆中存放的是什么?栈中存放的是什么?
凡是new出来的,都在堆中,栈中存放的是运行时使用的内存,比如main方法。
4.数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
数组越界指的是索引值超出了数组所储存的元素长度。
空指针异常指的是数组访问地址值时指向了没有内容的引用类型
5.参数为基本数据类型的时候,传递的是什么?参数为引用数据类型的时候,传递的是什么?

参数为基本类型的时候传递的是具体的数值,参数为引用类型时,传递的是地址值
回复 使用道具 举报
1.什么是数组?数组的定义有哪几种格式?
数组就是用来存放相同数据类型的集合,数组的定义格式分为动态初始化和静态初始化两种。
2.什么时候使用动态赋值?什么时候使用静态赋值?
不知道数组内容的时候使用动态赋值,知道内容的用静态赋值。
3.堆中存放的是什么?栈中存放的是什么?
堆中存放的是new出来的数据。栈是方法运行时使用的内存。
4.数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
越界异常就是访问了超过索引值的内容,即不存在的内容。空指针异常值数组的地址值为空,无法操作数组。
5.参数为基本数据类型的时候,传递的是什么?参数为引用数据类型的时候,传递的是什么?
数据值,地址值。
回复 使用道具 举报
1.什么是数组?数组的定义有哪几种格式?
       数组时用来存储同类型数据元素,
       格式:数据类型[] 数组名 = new 数据类型[]{元素};
2.什么时候使用动态赋值?什么时候使用静态赋值?
       存放指定内容时用静态赋值;直到长度不知道存放内容时用动态赋值
3.堆中存放的是什么?栈中存放的是什么?
         new出来的东西放在堆中;栈中存放方法
4.数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
         索引值超过了数组最大索引值;数组没有引用地址值。
5.参数为基本数据类型的时候,传递的是什么?参数为引用数据类型的时候,传递的是什么?
       基本数据类型传值;引用数据类型传地址值
        
回复 使用道具 举报
1.什么是数组?数组的定义有哪几种格式?
答:数组我们假拟一个容器,容器里装着数值;
两种格式:1.一个是动态格式
                2.一个是静态格式。
2.什么时候使用动态赋值?什么时候使用静态赋值?
答:有数值,但不确定长度用静态;确定元素的长度则用动态。
3.堆中存放的是什么?栈中存放的是什么?
答:堆中存放索引值和内存地址;
   栈中存放寄存器里的main的方法和数组;
4.数组越界异常是怎么产生的?数组空指针异常是怎么产生的?
答:在已经固定好的数组中,超出索引值数,我们叫做数组越界异常;
没有内存地址,却运用了引用,叫做空指针;
5.参数为基本数据类型的时候,传递的是什么?参数为引用数据类型的时候,传递的是什么?
答:参数为基本数据类型的时候,传递的是数据本身,
参数为引用数据类型的时候,传递的是引用对象的地址哈希值。

回复 使用道具 举报
1.数组就是一个组合,八几个相同数据类型的数据组合在同一个盒子里面,成为一组数组。2.数组的定义有两种格式:①动态数组格式:数据类型1 []  数组名称 = new 数据类型1  [数组长度];  ②静态数组格式:数据类型1 []  数组名称 = new 数据类型1  []{数据1,数据2,...},其中可省略写为:数据类型1 []  数组名称 = {数据1,数据2,...}。

3.内存堆中存放的是都是编程定义了new的东西。内存栈中存放的是编程用到的方法,不过有个前提是main方法要先进栈,其他调用的方法才能进栈。

4.数组越界异常是已知这个数组的长度为x,而你却想要这个数组给你个长度为x+1的值,这个时候就会出现越界异常。数组空指针异常是你定义了一个数组,让这个数组等于null:比如String[] str = null,这个数组没法在内存堆中找到自己的位置,你要打印这个数组的地址值时,就会出现空指针异常。

5.1.数组就是一个组合,八几个相同数据类型的数据组合在同一个盒子里面,成为一组数组。2.数组的定义有两种格式:①动态数组格式:数据类型1 []  数组名称 = new 数据类型1  [数组长度];  ②静态数组格式:数据类型1 []  数组名称 = new 数据类型1  []{数据1,数据2,...},其中可省略写为:数据类型1 []  数组名称 = {数据1,数据2,...}。

3.内存堆中存放的是都是编程定义了new的东西。内存栈中存放的是编程用到的方法,不过有个前提是main方法要先进栈,其他调用的方法才能进栈。

4.数组越界异常是已知这个数组的长度为x,而你却想要这个数组给你个长度为x+1的值,这个时候就会出现越界异常。数组空指针异常是你定义了一个数组,让这个数组等于null:比如String[] str = null,这个数组没法在内存堆中找到自己的位置,你要打印这个数组的地址值时,就会出现空指针异常。

5.参数为基本数据类型的时候,传递的是数据本身。参数为引用数据类型的时候,传递的是堆中的 地址值。
_______________________________________________________________________________________________成成
回复 使用道具 举报 1 0
12下一页
您需要登录后才可以回帖 登录 | 加入黑马