美文网首页码蚁ITJava 杂谈程序员
10-面向对象作业第5部分

10-面向对象作业第5部分

作者: 码蚁Q | 来源:发表于2018-09-16 15:44 被阅读50次

学习地址:
撩课-JavaWeb系列1之基础语法-前端基础
撩课-JavaWeb系列2之XML
撩课-JavaWeb系列3之MySQL
撩课-JavaWeb系列4之JDBC
撩课-JavaWeb系列5之web服务器-idea



101、什么是迭代器?
迭代器模式:就是提供一种方法
对一个容器对象中的各个元素进行访问,
而又不暴露该对象容器的内部细节。

102、如何使用迭代器遍历集合?

while(it.hasNext){
  System.out.println(it.next())
  }

103、使用迭代器遍历自己定义集合

  答:while(it.hasNext){
  Cat cat =(cat)it.next();
  }

104、如何根据解标获取集合当中的元素?

    list.get(角标)

105、遍历集体时有什么注意点?

Iterator遍历时不可以删除集合中的元素
在使用迭代器遍历时,是不允许直接修改集合结构。

106、为什么会有并发修改异常?

在获取迭代器时, 会和集合进行关联
保持两边数据一至
内部会有一个modCount 和 expectedModCount
默认他们两个是相等的
modCount:集合记录修改次数
expectedModCount迭代器当中记录集合修改的次数
在我们取元素的时候,都会先做一个判断
modCount 和 expectedModCount两个默认是相等的
会判断modCount与expectedModCount是否相等,
如果不相等就不会抛出一个并发修改异常

107、如何解决并发修改异常?

使用list当中特有的迭代器
 list.listIteration();

108、写出迭代器常用方法

hasNext();
next();
hasPrevious();
previous();
nextInde();
previousIndex();
remore();
set();
add();

109、描述一下ArrayList内部实现原理

把原来的数据复制出来,
在创建一个数组容量增加50%,
把复制的数组放到新数组当中原来的数组扔掉

110、如何去除集体当中重复的元素?

 1 创建一个空集合
    ArrayList list2 = new ArrayList();
 2 依次取出每一个元素
    ListIterator it = list.listIterator();
    while(it.hasNext()) {
 3每取出一个袁术,要先判断集合当中是否包含该元素
      Object obj = it.next();
    if(!list2.contains(obj)){
4若果已经包含该元素,就不打元素添加到新集合当中
      list2.add(obj);
      }
     }

111、equals方法的作用是什么?

判断地址从而比价两个值是否相等

112、如何进行ArrayList与LinkedList使用上的选择?

在经常插入与删除元素使用LinkedList因为链表插入与删除比较快
在经常查询选择ArrayList因为数组查询比较快

113、写出linkeList特有的方法有哪些?

往第一个位置添加元素
list.addFrisr(" a");
在集合的最后添加一个元素
list.addLast("b")
移除第一个元素
list.removeFirst()
移除最后有个元素
list.removeLast()
根据角标获取元素
list.get(0);

114、Vector特有那些方法?

在1.2以前
添加元素
vc.addElement(obj);

获取所有元素
Enumeration en = vc.elements();
while(en.hasMoreElements()) {
System.out.println(en.nextElement());
    }

115、没有泛型时存在哪些问题?

1.取出来的值必须要转换相应的一个类才能使用对应的方法
2.没有办法约束某一种类型
3.设计一个类,没办法可变多种类型

116、什么是泛型?

使用一个T表示
开始不指定类型,
在使用时再去指定真正的类型
T为变化的 
使用时再去确定具体的类型

117、集合使用泛型有些好处?

集合指定泛型后,只能添加指定的类型
定义泛型后,不需要强转

118、集合当中定义的泛型能不能存放基本数据类型?

不能

119、使用泛型时,有哪些注意点?

1.泛型前后前后类型保持一致
2.从java7开始,后面的类型可以不用写
  newArrayList<>();菱形语法
 3.泛型没有继承   

120、泛型的本质是什么?

泛型的本质还是Object 

121、什么是泛型类?

泛型类就在类上面定义的泛型。

122、什么是泛型方法?

泛型方法就是在方法上添加的泛型

123、如何定义泛型方法?

在返回值前面声明泛型,
在使用方法时,参数传递确定具体是什么类型,
方法单独使用泛型,必须要有参数才有意义

124、什么是泛型通配符?

不知道使用什么类型来接收的时候可以用?表示未知

125、如何定义泛型通配符?

static void text(list<?> list){
}

126、什么是泛型的上限和下限?

用来限定元素的类型必须是类型的子类(父类)或者是指定类型的类

127如何定义上限和下限?

上限:
static void text(List <? extends Number>list){
}
下限:
static void text(List <? super Number>list){
}

128、什么是泛型擦除?

就是把泛型给去掉了

129、如何把一个数组直接转成集合?

调用:Arrays.aslist(数组名);

130、数组转集合有哪些注意点?

数组转换集合并不能添加,删除元素
基本数据类型转换集合时,
是把基本数据类型的数组当做对象

习题配套视频 点击以下链接查看
https://study.163.com/courses-search?keyword=%E9%AB%98%E6%96%B0%E5%BC%BA

相关文章

  • 10-面向对象作业第5部分

    学习地址:撩课-JavaWeb系列1之基础语法-前端基础撩课-JavaWeb系列2之XML撩课-JavaWeb系列...

  • 07-面向对象作业第2部分

    21、什么是值传递? 22、什么是地址传递? 23、直接打印一个对象打印出来的是什么? 24、什么是匿名对象? 2...

  • 08-面向对象作业第3部分

    41、什么是枚举? 42、如何定义枚举? 43、复习枚举 44枚举的父类Enum 45、描述下main方法的参数 ...

  • 06-面向对象作业第1部分

    1、什么是面向过程? 2、什么是面向对象? 3、面向对象的三大特性是什么? 4、什么面向对象的好处是什么? 5、什...

  • 09-面向对象作业第4部分

    71、String.trim()方法的作用? 72、如何去除一个字符串当中所有的空格? 73、什么是不可变字符串?...

  • Python-day-12作业

    面向对象作业1:

  • Java面向对象部分

    重载 方法名一样,参数列表不同,同一类的事情 方法的重写override 子类中,出现了和父类一模一样的方法时,子...

  • 面向对象作业

    1设计一个倒计时器

  • 面向对象作业

    1.声明一个电脑类:属性:品牌、颜色、内存大小方法:打游戏、写代码、看视频 a.创建电脑类的对象,然后通过对象点的...

  • ES6面向对象

    1、ES6面向对象: class(类) 构造函数 对象 实例对象 ES5面向对象是模拟面向对象。 2、继...

网友评论

    本文标题:10-面向对象作业第5部分

    本文链接:https://www.haomeiwen.com/subject/gsqfnftx.html