首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

java中的 行列 集合 映射

2012-11-14 
java中的 队列集合映射?????????????????? java中的队列? 集合? 映射从计算机的角度看,数据是所有能被输入

java中的 队列 集合 映射

?????????????????? java中的队列? 集合? 映射

从计算机的角度看,数据是所有能被输入到计算机中的,且能被计算机处理的符号的集合。它是计算机操作对象的统称。数据结构是指数据与数据之间的联系,可以看做是数据与数据之间存在某种关系的集合,数据结构包括一下几个方面:

1):数据元素之间的逻辑关系,即数据的逻辑结构。

2):数据元素在计算机中的存储方式,即数据的存储结构。

3):施加在数据上的任何操作,在计算机中我们统称为运算(即数据的运算)(数据的运算包括:检索,插入,删除,更新,排序等)。

我们现在讲的队列,集合,映射是数据的常用的简单的存储结构。

1队列 (以ArrayList为例):它的特点是:线性的,有序的,长度可变的,有下表,可重复存放元素。画图板的保存可以用队列。有三种遍历方式。它的常用的方法add(添加元素),size(列表的长度)isEmpty(判断是否为空)get(有下表得到元素)set(替换某位置上的元素(两个参数))iterator (迭代器)和 contains(是否包含某个元素)。

2集合 (以HashSet为例):它的特点是;无序的,长度可变的,不可重复,无下表。由于他的不可重复性我们可以去掉某一队列中重复的元素。有两种遍历方式。他的常用方法add(添加元素),size(列表的长度)isEmpty(判断是否为空),iterator (迭代器)contains(是否包含某个元素)。

例题:我们要将一个无序数组,去掉重复的元素后,排序。

思路:我们创建一个集合,然后我们把数组的元素放入到集合中,然后在取出集合中的元素,放入到一个数组,此时数组即为无重复的数组。然后再排序。

代码:

?

3 映射(以HashMap为例):它的特点是:首先是一个K <--->V ,K是一个Set集合(不可重复,无序的),每一个K都对应一个K,如果加入相同的键值时,则会替换已经存在的键值队。containsKey(Object key)判断该映射是否包含对应的键值。containsValue(Object value) 判断该映射是否包含 由键 映射得到的值。get(Object key) ??返回该值(由键 映射得到的值)。isEmpty()判断是否为空,

put(K key, V value)加入一对键值。size()键值的对数。场景:在学校中一个学号对应一个学生及他的相关信息,在一个国家中一个身份证对应一个公民及他的相关信息。

? 例题:统计一个数组中每一个元素的次数。

思路:遍历数组,对他的每一个元素我们用 映射的containsKey(Object key),如果存在该元素我们? 取出该元素在映射的值 并加以放到映射中,如果不存在我们将? value? 赋值1,加到映射中。???

?

? 代码:

?

1 楼 walkingman_c 2011-07-25   very good. but  there  is  a   not-so-important  bug in the code .

    
         for(int i=0;i<a.length;i++){  
             if(map.containsKey(a[i])){  
                 [code="java]int v=map.get(a[1])+1; " 
                 map.put(a[i], v);  
             }else{  
                 map.put(a[i],1);  
             }  
it  should be  i  not  1. 2 楼 walkingman_c 2011-07-25   very good. but  there  is  a   not-so-important  bug in the code .

    
         for(int i=0;i<a.length;i++){  
             if(map.containsKey(a[i])){  
                 int v=map.get(a[1])+1;
                 map.put(a[i], v);  
             }else{  
                 map.put(a[i],1);  
             }  
it  should be  i  not  1. 3 楼 xichao1929 2011-07-26       for(int i=0;i<a.length;i++){  
             if(map.containsKey(a[i])){  
                 [code="java]int v=map.get(a[i])+1; " 
                 map.put(a[i], v);  
             }else{  
                 map.put(a[i],1);  
             }  
是这样吧!!

热点排行