动力节点旗下在线教育品牌  |  咨询热线:400-8080-105 学Java全栈,上蛙课网
首页 > 文章

11道Java数组和向量自测题

09-03 17:13 132浏览
举报 T字号
  • 大字
  • 中字
  • 小字

Java编程学习其实会涉及到很多的内容,不止java自身的知识,一些计算机和数学方面的理科知识都涉及到。相信许多java零基础的小伙伴们在学习的过程中学到了Java数组和向量的内容,今天这篇文章整理了java向量自测题,大家可以下面的题目来检测自己的学习效果怎么样。

大多数处理数据的应用程序,都因为不限制程序能够处理的数据量而变得更加通用。由于数组的大小在它分配的时候就己经固定了java程序员会发现如果不使用可扩展的数据结构,就很难开发与数据量大小无关的代码。向量和矩阵是两个可扩展的数据结构的例子。那么下面就来学习向量与数组相关知识点的自测题吧!

1、数组和向量有哪些相同点?哪些不同点?

答:数组和向量都是随机访问的容器对象 它们都能够在运行时确定其大 。由于两者同属于对象,都可以是空值,这种情况通常是要避免的

数组是java的一个特性,采用方括([])来访问,而向量则是采用getset法来访问。数组是声明用来保存某个特定类型的对象的,这由用户决定。在访问数组的时候,它们返回该类型的对象。向量总是保存Object类型的对象,object类型是最普通的类型。从向量访问到的值总是Object类型的,该结果必须被强制转换,以指出井验证想要的类型。

Vector类最重要的特性是可扩展性(extensibility)概念。向量能够通过 add方法增加长度。数组必须明确地重新分配并复制。向量数据抽象自动并高效的支持这个概念。

2、向量的add(v)和add(i,v)方法之间有哪些不同点?

答:add(v)方法将值追加到向量的末尾。add(i,v)方法将一个值插入到一个向量中结果是v就可以在位置i上找到在这个过程中,任何在i和高于i的位置上的值都将移动到更高的位置上

3、add(i,v)和set(i,v)方法之间有哪些不同点?

答:add方法将新的值插入到向量中,在逻辑上增加了其大小。存在的值都没有改变。set(i,v)方法替换了位置i上的值。

4、向量的remove(v)(v是一个Object值)和remove(i)(i是一个整型值)方法之间有哪些不同点?

答:remove方法或者将第一个v值删除,或者将位置i上的值删除。二者都将减小向量的逻辑大小。

5、向量的容量和大小之间的区别是什么?

答:大小是指向量中逻辑可用的存储单元数目。通常,该大小和向量中存储的元素数目相对应。容量是指当前分配给该向量的内存引用的数目 容量指出了在必须重新分配和复制底层的数组之前,向量大小能够达到的最大值。理想情况下,该容量提供了足够的空间使得大小能够增加而不用重新分配。

6、为什么说对于Hangman的实现,使用向量比起使用数组是一大进步?

答:向量的使用使得我们集中精力于列表中剩下的操作,而不是字列表本身的分配和重新分配。

7、当向向量中插入一个值的时候,为什么必须要从向量的最高位开始向右移动元素?

答:这能够避免破坏数据。从向量的低端开始移动,会导致每一个移动的值损坏没有移动的值。

8、默认情况下,当向量的大小第一次超过它的容量时,向量的容量会增加一倍。为什么?

答:大小的倍增有效地长时间延缓了向量的下一次重新分配。由于重新分配意味着每一个向量元素的移动,应当尽可能避免重新分配。倍增将一个单值复制的平均次数从2/n减少到了1。

9、下面代码的目的是什么?

ElementData=new Object[initialCapacity];

当这行代码执行后, ElementData 中的数据发生了什么变化?

答:代码分配了一个initialCapacity对象的数组,并且将指向数组的一个引用赋值给了elementData。由elementData引用的前一个数组潜在地丢失了。该数组的每一个元素都是null;数组中没有元素指向任何特定的对象。

10、当一个类有不止一个构造函数时,何时以及如何表明使用哪一个适当的构造函数?例如,比较下面两种方法:Vector v = new Vector() ; Vector w = new Vector(lOOO) ;

答:构造函数和其他的方法一样,都是通过其参数的类型来识别的 当遇到关键字new时,就会调用构造函数,紧随new关键字之后的是将要构造的对象类型,以及用来选择和执行适当构造函数的参数。变量v采用无参数的构造函数构造,其大小为容量为10。变量用单个参数(一个int类型的值)构造函数构造,其大小为0,容量为1000可以不像v一样立即重新分配,但是它初始耗费了更多的内存。

11、矩阵的行索引受矩阵的高和宽限制吗?当索引一个矩阵的时候,首先要提供行还是提供列?

答:行由高度界定,列由宽度界定。在java和大多数的现代语言中,行是所提供的第一个索引,这沿用的是数学中使用的符号。

以上就是java自测题,在这些题目后面都相应的附上了参考答案,大家可以根据java数组与向量与答案进行查漏补缺。希望大家在其他空余时间可以通过专业的java培训课程的方式来学习更多的java知识,提高自己的java水平。

0人推荐
共同学习,写下你的评论
0条评论
代码小兵1147
程序员代码小兵1147

6篇文章贡献30358字

作者相关文章更多>

推荐相关文章更多>

Java数据结构

HelloWorld10-31 08:24

浅谈MySQL中SQL优化的常用方法

军哥08-12 23:29

五分钟读懂UML类图

江湖人称小李白12-10 10:41

MyBatis开发框架的四大核心

IT逐梦者08-17 21:43

一次搞定continue,break和return

HelloWorld11-06 11:19

发评论

举报

0/150

取消