文档章节

java12

芥末小弟
 芥末小弟
发布于 2017/03/01 09:54
字数 968
阅读 6
收藏 0
1:List的子类(掌握)
	(1)List的子类特点
		ArrayList:
			底层数据结构是数组,查询快,增删慢
			线程不安全,效率高
		Vector:
			底层数据结构是数组,查询快,增删慢
			线程安全,效率低
		LinkedList:
			底层数据结构是链表,查询慢,增删快
			线程不安全,效率高
	(2)ArrayList
		A:没有特有功能需要学习
		B:案例
			a:ArrayList存储字符串并遍历
			b:ArrayList存储自定义对象并遍历
	(3)Vector
		A:有特有功能
			a:添加
				public void addElement(E obj)		--	add()
			b:获取
				public E elementAt(int index)		--	get()
				public Enumeration<E> elements()	--  iterator()
		B:案例
			a:Vector存储字符串并遍历
			b:Vector存储自定义对象并遍历
	(4)LinkedList
		A:有特有功能	
			a:添加
				addFirst()
				addLast()
			b:删除
				removeFirst()
				removeLast()
			c:获取
				getFirst()
				getLast()
		B:案例
			a:LinkedList存储字符串并遍历
			b:LinkedList存储自定义对象并遍历
	(5)案例:
		A:去除集合中的多个字符串的重复元素
			如果字符串的内容相同,即为重复元素
		B:去除集合中的多个自定义对象的重复元素
			如果自定义对象的成员变量值都相同,即为重复元素
		C:用LinkedList模拟一个栈数据结构的集合类,并测试。
			你要定义一个集合类,只不过内部可以使用LinkedList来实现。

2:泛型(掌握)
	(1)泛型概述
		是一种把明确类型的工作推迟到创建对象或者调用方法的时候才去明确的特殊的类型。
	(2)格式:
		<数据类型>
		注意:该数据类型只能是引用类型。
	(3)好处:
		A:把运行时期的问题提前到了编译期间
		B:避免了强制类型转换
		C:优化了程序设计,解决了黄色警告线问题,让程序更安全
	(4)泛型的前世今生
		A:泛型的由来
			Object类型作为任意类型的时候,在向下转型的时候,会隐含一个转型问题
		B:泛型类
		C:泛型方法
		D:泛型接口
		E:泛型高级通配符
			?
			? extends E
			? super E
	(5)我们在哪里使用呢?
		一般是在集合中使用。
	
3:增强for循环(掌握)
	(1)是for循环的一种
	(2)格式:
		for(元素的数据类型 变量名 : 数组或者Collection集合的对象) {
			使用该变量即可,该变量其实就是数组或者集合中的元素。
		}
	(3)好处:
		简化了数组和集合的遍历
	(4)弊端
		增强for循环的目标不能为null。建议在使用前,先判断是否为null。
 	
4:静态导入(了解)
	(1)可以导入到方法级别的导入
	(2)格式:
		import static 包名....类名.方法名;
	(3)注意事项:
		A:方法必须是静态的
		B:如果多个类下有同名的方法,就不好区分了,还得加上前缀。
			所以一般我们并不使用静态导入,但是一定要能够看懂。
	
5:可变参数(掌握)
	(1)如果我们在写方法的时候,参数个数不明确,就应该定义可变参数。
	(2)格式:
		修饰符 返回值类型 方法名(数据类型... 变量) {}
		
		注意:
			A:该变量其实是一个数组名
			B:如果一个方法有多个参数,并且有可变参数,可变参数必须在最后
	(3)Arrays工具类的一个方法
		asList()把数组转成集合。
		注意:这个集合的长度不能改变。

6:练习(掌握)
	A:集合的嵌套遍历
	B:产生10个1-20之间的随机数,要求随机数不能重复
	C:键盘录入多个数据,以0结束,并在控制台输出最大值
	
7:要掌握的代码
	集合存储元素,加入泛型,并可以使用增强for遍历。

  

© 著作权归作者所有

共有 人打赏支持
上一篇: c++数据类型
芥末小弟
粉丝 0
博文 202
码字总数 120715
作品 0
昌平
私信 提问
github上万颗star的21个JAVA(19个Android相关)开发框架,知道多少,用过多少(截止2016年12月17日)

相关阅读: 吊炸天!74款APP完整源码! github上万颗star的21个JAVA(19个Android相关)开发框架,知道多少,用过多少(截止2016年12月17日) 移动端App开发的三种开发技术对比 elastic/elas...

xhmj12
2016/12/30
0
0

没有更多内容

加载失败,请刷新页面

加载更多
docker搞个wordpress

1.先把wordpress的镜像下载下来 docker pull wordpress 2.下载mysql docker pull mysql:lastest 3.启动mysql docker run --name blog -e root -d mysql:5.7 docker run --name some-mysql -e......

无极之岚
2分钟前
0
0
【宇润日常疯测-005】PHP 中的 clone 和 new 性能比较

clone和new本不应该放在一起比较,它们的作用是不同的。但可能有一些场景下,可以用clone也可以用new,那么这时候我们选哪个呢? 我编写了两个测试,第一个是声明一个空类,第二个是带构造方...

宇润
3分钟前
0
1
点击按钮弹出类似IOS 底部 dialog

implementation 'com.baoyz.actionsheet:library:1.1.7' 然后设置按钮点击监听,,调用下列代码即可 ActionSheet.createBuilder(this, getSupportFragmentManager()) ......

lanyu96
6分钟前
0
0
专访阿里云专有云马劲,一个理性的理想主义者

“我的故事都是和团队技术相关的,自己还真没有什么引人入胜的故事。”当马劲被问到能不能多分享些个人经历故事时他笑着说,我们就干脆怀着好奇聊了聊他和阿里云专有云一路走来的故事。 马劲...

阿里云官方博客
38分钟前
1
0
java环形缓冲区

import java.util.ArrayList;import java.util.List;/** * * 环形缓冲区<br/> * 一. 写数据:<br/> * 1. push: 当数据已写满时返回false,否则可以正常写入返回true<br/>......

whoisliang
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部