day16-Map、可变参数

Map:
Map<String,Integer> map=new Treeset<>():排序 唯一
newHash<>();无序唯一
LinkedHashset<>()有序唯一
map.put(" “, “”)如果键值对相同会覆盖
Integer interger = map.get(”“)根据建找值
boolean b=map.cotainskey(”“)判断是否包含
Integer remove=map.remove(”“)根据键删除
特有:
Integer value=map.putIfAbsort(”“,”“)设置如果键相同不覆盖
Integer value2=map.getOrDefault(”“,”“)根据键找值如果有返回没有就返回默认值
boolean b=map.remove(“柳岩”,38)根据键和值一对元素全相同才能删除
map.forEach(k,v)——System.out.println(K+”"+V)打印

遍历的第一种方法:
核心Setkeyset()获取存储所有键的set集合依次获取到所有set集合
1.定义Map集合添加数据
2.调用keyset方法获取存储所有键的set集合
3.遍历set集合依次获取到每个元素(Map集合和key)
4.调用map集合的get方法根据键找到对应值

获取key的值:set set=map.keySet();
遍历:Iteratorit=set.iterator();
while(it.hasNext()){
//遍历set
String Key=it.next();
Integer value=map.get(key);
sout(key+value)
}
第二种方法:
用entryset(核心set<Map Entry<k,v>>entryset(键值对应映射关系))
set<Map.Entry<String,Integer>> set=map.entryset
Iterator<Map.Entry<string,Integer>> it=set.iterator();
while(it.hasNext()){
遍历:set MapEntry<String,Integer> a=it.next()
String Key a.getKey();
Integer value=a.getValue();
sout(key+“=”+value)
}

java.util.TreeMap
特点:底层是红黑树不允许null键允许null值
键 排序 唯一
构造方法:
publicTreeMap()空参构造必须事先自然排序接口
public TreeMap(Comparater())如果带参构造需要传入一个比较器对象,键是否实现自然接口都可以
Map<Integer,String> treemap=new TreeMap<>(可以将别的hashmap传入)

方法:
Inreger firstkey=map.firstkey();获取最小值
=map.lastkey()": 获取最大建
Map.Entry<Integer.String> lastEntry=map.lastEntry(); 获得最大键值对
Integer firstkey = map.celingkey(15);>=指定建的最小值
map.celingEntry>=舰队的最小值
map.floorkey (15);<=指定建的最大值
map.floorEntry(25);<=指定建对最大值

java.util.Properties
特点:
1.继承Hashtable实现了Map接口底层是哈希表
2.没有泛型,键值対固定为String类型
3.唯一一个可以和IO流直接给结合使用的结合
方法:
Properties p=new Properties();
p.setProperty(key,value);添加元素
p.getProperty(key)根据键找值相当于get
Set set=P.StringPropertyNames(); 获取存储关键字集合,相当于key set

可变参数
使用前提是参数数量不确定
格式
数据类型…参数名如:int… a
可变参数本质上就是数组可以直接传入数组
注意!!一个方法只能有一个可变参数
2.如果有多个参数,可变参数可以放到最后
int sum=sum(10,20,30);
public static int sum(int… a){ }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值