鱼C论坛

 找回密码
 立即注册
查看: 3212|回复: 0

[学习笔记] java笔记 容器

[复制链接]
发表于 2017-8-14 11:36:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 可爱的静静 于 2017-8-14 11:42 编辑

HashSetl类 集合
和ArrayList 差不多 不同的是ArrayList 可以存放相同的数据 而HashSet当遇到相同的时候就会覆盖之前的
例如:
ArrayList sport =new ArrayList();
                sport.add("run");
                sport.add("walk");
                sport.add("run");
                System.out.println(sport);
                System.out.println("--------------------------");

                HashSet sport1 =new HashSet ();
                sport1.add("run");
                sport1.add("walk");
                sport1.add("run");
                System.out.println(sport1);
输出结果:

[run, walk, run]
--------------------------
[run, walk]

String to String

常用的方法:
  
返回值类型
  
  
方法
  
  
详细
  
  
boolean
  
  
add(E o)
  
  
如果没有添加的元素,则添加元素
  
  
void
  
      
移除所有元素。
  
      
iterator()
  
  
  
  
对此集合中元素进行迭代的迭代器
  
  
boolean
  
      
如果指定元素存在于此集合中,则将其移除。
  
  
int
  
      
返回集合的长度
  

总结ArrayList 与HashSet相同之处 add(),clear(),remove(),size iterator,还有就是如果:
AllayList a=new ArrayList();
System.out.println(a);   输出结果是容器的全部元素 HashSet也是



HashMap(键值)
就是这个类存放的是  1 相对应 First
2 相对应 Second
这个容器 既放1 也放first

例如:
public static void main(String[] args) {
                HashMap<Integer ,String> a=new HashMap<Integer ,String>();
                a.put(1,"ni");
                a.put(2,"i");
                a.put(3,"h");
                a.put(4,"nai");
                System.out.println(a.get(1));
                System.out.println(a.get(2));
                System.out.println(a.get(3));
                System.out.println(a.get(4));
                a.remove(1);
                System.out.println(a);
                

        }
<>限制了这个容器只能存放的对象 而这个<>只能放对象相对应的类 也就是说 int这些基本类型的类不可以 但是包裹类 可以(Integer)
常用方法
  
类型
  
  
方法
  
  
详细
  
      
put(K key, V value)
  
  
在此映射中关联指定值与指定键
  
  
void
  
      
          从此映射中移除所有映射关系。
  
      
keySet()
  
  
  
  
返回此映射中所包含的键的 set 视图。
  
          
如果此映射中存在该键的映射关系,则将其删除。
  
  
int
  
  
size()
  
  
  
  
返回此映射中的键-值映射关系数。
  
  
V
  
  
g et(Object key)
  
  
  
返回指定键在此标识哈希映射中所映射的值,如果对于此键来说,映射不包含任何映射关系,则返回 null
  

         
容器关系表如图:



List(列表),Set(集)
List:可存放重复元素,元素存取是有序的。 Set:不可以存放重复元素,元素存取是无序 的。

而且迭代器里 in.next();返回的是Object类有不要的时候需要转型
看上图Map和List  Set都可以用迭代器 不同的是 需要用到对象key索引
package UI;

import java.util.*;
import java.util.Iterator;
public class ds {

        public static void main(String[] args) {
                System.out.println("---------HashMap-----------");
                HashMap<Integer ,String> a=new HashMap<Integer ,String>();
                a.put(1,"ni");
                a.put(2,"i");
                a.put(3,"h");
                a.put(4,"nai");
                System.out.println(a.get(1));
                System.out.println(a.get(2));
                System.out.println(a.get(3));
                System.out.println(a.get(4));
                a.remove(1);
                System.out.println(a);

                Iterator b=a.keySet().iterator();
                while(b.hasNext()){
                        int c=(int)b.next();//返回Object类 转型,b.next输出的只是key 
                        System.out.println(c+","+a.get(c));
                        
                }
                System.out.println("-------ArrayList和迭代器-------------");
                ArrayList sport =new ArrayList();
                sport.add("run");
                sport.add("walk");
                sport.add("run");
                Iterator s1=sport.iterator();
                while(s1.hasNext()){
                        System.out.println(s1.next());
                        
                }
                System.out.println("---------HashSet和迭代器-------------");
                HashSet sport1 =new HashSet ();
                sport1.add("run");
                sport1.add("walk");
                sport1.add("run");
                
                Iterator s2=sport1.iterator();
                while(s2.hasNext()){
                        System.out.println(s2.next());
                        
                        
                }

        }
        
}
无标题.png

评分

参与人数 3荣誉 +9 鱼币 +13 贡献 +3 收起 理由
小甲鱼 + 4
Minhal + 4 + 4 + 3 支持楼主!
alltolove + 5 + 5 支持楼主!

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-15 01:02

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表