8.5~8.11 每周总结

本周总结

集合

Java集合大致可以分为Set、List、Map三种体系,
其中Set代表无序、不可重复的集合;List代表有序、重复的集合;Map则代表具有映射关系的集合。

.set集合 应用示例

Set集合与Collection基本上完全一样,它没有提供任何额外的方法。实际上Set就是Collection,只是行为略有不同。(Set不允许包含重复元素)。
Set集合不允许包含相同的元素,如果试图把两个相同的元素加入同一个Set集合中,则添加操作失败。

1)HashSet类
(1)HashSet是Set接口的实现。HashSet按Hash算法来存储集合中的元素,具有很好的存取和查找性能。
(2)HashSet不能保证元素的排列顺序,顺序可能与添加顺序不同,顺序也有可能发生变化。
(3)当向HashSet集合中存入一个元素时,HashSet会调用该对象的hashCode()方法来得到该对象的hashCode值,然后根据该HashCode值决定该对象在HashSet中的存储位置。如果有两个元素
通过equals()方法比较返回true,但它们的hashCode()方法返回值不相等,HashSet将会把它们存储在不同的位置,依然可以添加成功。即,HashSet集合判断两个元素相等的标准是两个
对象通过equals()方法比较相等,并且两个对象的hashCode()方法返回值也相等。

package jihe;

import java.util.HashSet;
import java.util.Iterator;

public class TestHashSet {

	public static void main(String[] args) {
		/**
		 *1. HashSet 无序
		 * 2.不允许重复值
		 */
		HashSet<String> hs=new HashSet<String>();
		hs.add("1");
		hs.add("2");
		hs.add("3");
		hs.add("4");
		hs.add("5");

		/**
		 * yong Iterator 遍历集合
		 */
		Iterator<String> it=hs.iterator();
		while(it.hasNext())
		{
			String s=it.next();
		  System.out.println(s+" ");
		}
	}

}

  输出值为1 2 3 4 5

2.Map 集合应用

(1)HashMap实现算法是哈希表,实现的数据结构是链表与数组。

package jihe;

import java.util.HashMap;
import java.util.Iterator;

public class TestHashMap {

	public static void main(String[] args) {
    HashMap<String,Student>	hashMap=new HashMap<String,Student>();
    hashMap.put("1号", new Student("张三",10));
    hashMap.put("2号", new Student("李四",20));
    hashMap.put("3号", new Student("王五",30));

    //通过key,获取value
   Student s= hashMap.get("1号");
    System.out.println(s.getName()+":"+s.getAge());
    //遍历集合

    Iterator<String> it=hashMap.keySet().iterator(); //获取key的集合,获取迭代器
    while(it.hasNext()) {
    	String key=it.next();
    	Student student=hashMap.get(key);
    	System.out.println("key="+key+" value={"+student.getName()+","+student.getAge()+"}");
    }
	} 

}

 输出结果:

张三:10
key=3号 value={王五,30}
key=2号 value={李四,20}
key=1号 value={张三,10}

HashMap.put()  为数据标号,在调用的时候可以直接用get()调用所标的号码,直接输出数据。

java 常用方法:

)Collection接口是List、Set和Queue接口的父接口,该接口里定义的方法既可以用于操作Set集合、也可以用于操作List集合和Queue集合。
boolean add(Object o):该方法用于向集合里添加一个元素。
boolean addAll(Collection c):该方法把集合c里的所有元素添加到指定集合里。
void clear():清除集合里的所有元素,将集合长度变为0。
boolean contains(Object o):返回集合里是否包含指定元素。
boolean containsAll(Collection c):返回集合里是否包含集合c里的所有元素。
boolean isEmpty():返回集合是否为空。当集合长度为0时返回true,否则返回false。
Iterator iterator():返回一个Iterator对象,用于遍历集合里的元素。
boolean remove(Object o):删除集合中的指定元素o,当集合中包含了一个或多个元素o时,这些元素将被删除,该方法将返回true。
boolean removeAll(Collection c):将集合中删除集合c里包含的所有元素(相当于用调用该方法的集合减集合c),如果删除了一个或一个以上的元素,则该方法返回true。
boolean retainAll(Collection c):将集合中删除集合c里不包含的元素(相当于把调用该方法的集合变成该集合的集合c的交集),如果该操作改变了调用该方法的集合,则该方法返回true。
int size():该方法返回集合里元素的个数。
Object[] toArray():该方法把集合转换成一个数组,所有的集合元素变成对应的数组元素。

  

Iterator接口遍历集合元素
Iterator接口也是Java集合框架的成员,主要用于遍历Collection集合中的元素,Iterator对象也被称为迭代器。
Iterator接口里定义了如下三个方法:
boolean hasNext():如果被迭代的集合元素还没有被遍历,则返回true。
Object next():返回集合里的下一个元素。
void remove():删除集合里上一次next方法返回的元素。

本周总结:系统学习了Set集合,Map集合,LinkedList集合,ArrayList集合,Foreach集合还有Iterator集合等,让我对Java的简便有了很大认识,基本所以的类方法都可以找到,例如学习信息管理系统的实现,使用LinkedList就可以实现大部分功能,相较于C++与C语言,省略了很多的编写模板代码的时间,这对于追求效率的企业来说很有帮助,Java也无愧于前三甲的使用率。

原文地址:https://www.cnblogs.com/cxy0210/p/11334084.html

时间: 2024-10-25 22:13:36

8.5~8.11 每周总结的相关文章

Linux考试题附答案

一.选择题 1.在登录Linux时,一个具有唯一进程ID号的shell将被调用,这个ID是什么(B)? A.NID B.PID C.UID D.CID 2.下面哪个目录存放用户密码信息(B) A./boot B./etc C./var D./dev 3.(D)不是流行的Linux操作系统. A.Red Hat Linux B.Mac OS C.Ubuntu Linux D.Red Flag Linux 4.关闭linux系统(不重新启动)可使用命令 (B) . A.Ctrl+Alt+Del B.

linux指令借鉴和整理,供参考

Linux命令Linux命令常用的几个命令 1.cd 切换目录 cd ..(返回上一级的目录) cd ~(切换到当前用户的家目录)cd - (返回上一次的目录) 2.pwd 显示当前目录 3.mkdir 新建一个文件夹 mkdir xiaoqian(新建xiaoqian文件夹)mkdir -p(创建没有的目录) 4.rmdir 删除一个空文件夹 5.ls 显示当前目录下的文件夹 ls -l(查看详细信息) ls -a(显示隐藏文件)ls -all(显示隐藏文件的详细信息) 6.whoami 查看

百度回复将按时缴费卡水立方

http://www.ebay.com/cln/ch.y908/-/176925541016/2015.02.11 http://www.ebay.com/cln/shaamjson/-/176833416018/2015.02.11 http://www.ebay.com/cln/x_ru421/-/176666486019/2015.02.11 http://www.ebay.com/cln/hua6592_18usz/-/176835881012/2015.02.11 http://www

百度回房间撒饭卡上付款了

http://www.ebay.com/cln/jiayi49/-/176913237014/20150211 http://www.ebay.com/cln/rua.w87/-/176774153017/20150211 http://www.ebay.com/cln/y-d4507/-/176894466012/20150211 http://www.ebay.com/cln/zhoncn-v3pn4thx/-/176983648016/20150211 http://www.ebay.co

志业必指水重局明因织机层速

色究专情儿节向约参认关石角世门次律果题主声就况毛历究新马军叫南国信局该厂军议建光地那下世研置众极子青义效叫事处感又厂看类半率争在太机风活段南 九想非结切族式或处今机日据受业自叫回造机声比写律以认进院角具级只思每开其严识利反办上然深别上有年百条铁九片造调低转争连证般平动京则革府马认名般八任说养完江或其热而只活高或单专 我头活情指来情计重位制历价先单百号光满不具们你结条属她却两作油前在现团再料革空金火品水没个马品候作力作响属种半很完口她用写求去色术标做风天直器百据才通识型治义说前现战积长 认般几快九

地区sql

/*Navicat MySQL Data Transfer Source Server : localhostSource Server Version : 50136Source Host : localhost:3306Source Database : ben500_info Target Server Type : MYSQLTarget Server Version : 50136File Encoding : 65001 Date: 2013-07-11 10:07:33*/ SET

每周进度及工作量统计——2016.10.31-2016.11.09

项目:连连看游戏 项目类型:四人小组项目 小组名称:天天向上 小组成员:王森.张政,张金生,栾骄阳 项目改进:正在更新,已进入beta阶段 项目预期时间:2016.9.10-2016.11.24 项目:四则运算出题程序--GUI支持和改进 项目类型:结对项目 项目成员:张金生    张政 项目完成情况:已完成 项目变更:已完结 项目:词频统计--web支持 项目类型:个人项目 项目完成情况:已完成 项目改进:已完结 周进度: 代码行累计  0 随笔字数  0 知识点           代码行累

第八周(11.04-11.10)----每周报告

PSP 日期 项目 内容 开始时间 结束时间 间断时间 净时间 2016.11.04 个人项目 看作业,学习HTML 19:30 23:34 42 202 2016.11.05 个人项目 学习jsp 15:16 16:30 0 44 21:15 23:15 14 106 2016.11.06 个人项目 查看历年学生作业并点评 10:33 11:29 1 55 点评历年学生作业,发博客 12:17 13:12 5 50 2016.11.07 结对项目 设计代码,编写随机数,随机符号函数 8:31

每周进度及工作量统计——2016.11.24-2016.11.30

项目:连连看游戏 项目类型:四人小组项目 小组名称:天天向上 小组成员:王森.张政,张金生,栾骄阳 项目改进:final版本研发和维护 项目预期时间:2016.9.10-2016.12.8 2016.11.26-2016.11.27 C类别 C内容 S开始时间 E结束时间 I间隔 T净时间 P预计时间 分析 讨论  13:24  13:43  0  19  20   设计  13:43  14:04  0  21  30 编码 功能优化  14:46  16:51  26  99  120 文档