黑马程序员技术交流社区

标题: 个人的一些总结,求加精! [打印本页]

作者: 马铃薯    时间: 2015-2-10 19:50
标题: 个人的一些总结,求加精!

-------------------------------------------------------------------------------------
* boolean remove(Object o)
* 从集合中删除元素,成功返回true
*删除原则:
*删除集合中第一个给定元素equals比较为true的元素。
*equals必须被重写,remove方法只删除一个元素
-------------------------------------------------------------------------------------
* 新循环不是JVM支持的新语法,而是编译器支持的。
* 编译器在编译源程序时,发现我们使用新循环遍历集合时
* 会将这段代码改为使用迭代器方式实现
* 所以新循环在遍历集合时,不能通过集合的方法修改元素。
-------------------------------------------------------------------------------------
* Collection提供了统一遍历集合元素的方法
* 迭代器模式
* Iterator 本身是一个接口,每一种集合的实现类都有各自的迭代器实现
* 我们不需要关系具体迭代器的类型
* 只将他们当做迭代器遍历集合元素即可
*
* 使用迭代器遍历集合元素应遵循:  问-取-删  的步骤
* 其中 删  不是必须的操作
  boolean hasNext() 询问集合中是否有元素可以取出
* 迭代过程中不能通过集合的方法删除元素,可以通过迭代器本身的方法
-------------------------------------------------------------------------------------
* 集合可以转换为数组
* 使用的是Collection 中定义的方法toArray();

String[] array=c.toArray(new String[c.size()]);
for(String str:array){System.out.println(str);}
-------------------------------------------------------------------------------------
* 数组转集合
* 需要使用Arrays的静态方法asList
* 转换后的集合是只读的
* 所有的集合都支持一个构造方法,就是参数为Collection
* 该构造方法的作用是创建当前集合的同时,将给定的集合中所有元素添加到当前集合中

List<String> list = Arrays.asList(array);
System.out.println(list);
List<String> list2=new ArrayList<String>(list);
list2.add("five");
-------------------------------------------------------------------------------------
Collection  是集合的总接口
Collections 是集合的工具类 * 其定义的静态方法sort用于对List集合进行自然排序
            Collections.sort(list);使用时必须实现Comparable接口
-------------------------------------------------------------------------------------
* java.util.Map
* 以key-value的形式保存元素
* 看起来很像一个两行多列的表格


* V put(K k , V v)
* 将给定的key与value存入Map中
* 1:给定的Key不存在,正常存入元素,返回值为null
* 2:给定的Key存在,叫做替换value操作。返回值就是被替换的元素


* 获取元素的方式:
* 根据给定的key获取对应的value
* V get(K k)
* 若给定的key在Map中不存在,则返回null

* boolean  containsKey(K k)  
* 查看当前Map中是否包含给定的Key
* 这里是否包含依靠equals比较的结果
-------------------------------------------------------------------------------------
*** 重写一个类的hashcode()方法有以下注意事项:
1、若一个类重写了equals方法,那么就应当重写hashcode()方法。
2、若两个对象的equals方法比较为true,那么它们应当具有相同的hashcode值。
3、对于同一个对象而言,在内容没有发生改变的情况下,多次调用hashCode()方法应当总是返回相同的值。
4、对于两个对象equals比较为false的,并不要求其hashcode值一定不同,但是应尽量保证不同,这样可以提高散列表性能。

* 遍历所有的Key
* Set(K)  keySet()
* 该方法会将Map中所有的key存入一个Set集合并返回
* 所以,遍历集合就等于遍历所有的key


* 遍历Map中每一组键值对
* Set entrySet()
* 每一个Entry实例表示Map中的一组键值对
Set<Entry<String,Integer>> entrySet=map.entrySet();


* 遍历所有的Value
Collection<Integer> values=map.values();
-------------------------------------------------------------------------------------
* java.io.File
* File用于描述文件系统中的一个文件或目录
* 使用File可以获取表示的文件或目录的属性信息
* 也可以使用File来操作文件或目录(创建,删除等)
* 但是不能通过File操作文件内容.


File file = new File("."+File.separator+"demo.txt");
————————————华丽的分割线——————————————————
希望对大家有帮助!  谢谢!


作者: 邓士林    时间: 2015-2-10 20:28
努力吧。。。
作者: Oo不弃    时间: 2015-2-10 20:37
好的,来看看
作者: 马铃薯    时间: 2015-2-10 20:49
邓士林 发表于 2015-2-10 20:28
努力吧。。。

谢谢啦!   
作者: 马铃薯    时间: 2015-2-10 20:52
Oo不弃 发表于 2015-2-10 20:37
好的,来看看

嗯嗯!  一起努力把!
作者: 刘聪聪    时间: 2015-2-11 08:43
努力吧……
作者: doctorsoft    时间: 2015-2-11 09:03
谢谢分享
作者: 奔跑的猴子    时间: 2015-2-11 09:09
支持一个,赚给加给你的黑马币,哈哈
作者: huangchunwei    时间: 2015-2-11 09:20
加油加油。。赞一个。:)
作者: 马铃薯    时间: 2015-2-11 15:03
奔跑的猴子 发表于 2015-2-11 09:09
支持一个,赚给加给你的黑马币,哈哈

哈哈!  谢谢啦!
作者: 马铃薯    时间: 2015-2-11 15:13
奔跑的猴子 发表于 2015-2-11 09:09
支持一个,赚给加给你的黑马币,哈哈

谢谢啦!  嘿嘿!  
作者: yueLife_1993    时间: 2015-2-11 16:43
加油加油 赞一个。。。
作者: 马铃薯    时间: 2015-2-11 18:14
yueLife_1993 发表于 2015-2-11 16:43
加油加油 赞一个。。。

嘿嘿!  谢谢啦!
作者: bztf    时间: 2015-2-11 18:54
谢了 师兄




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2