java作业11

1."sdfgzxcvasdfxcvdf"获取该字符串中的字母出现的次数。


   希望打印结果:a(1)c(2).....

package treemap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import java.util.TreeMap;
/*
 * "sdfgzxcvasdfxcvdf"获取该字符串中的字母出现的次数。
   希望打印结果:a(1)c(2).....
 */
public class TreeMapDemo {
public static void main(String[] args) {
String str="sdfgzxcvasdfxcvdf";
TreeMap<Character,Integer> map=new TreeMap<Character,Integer>();//定义TreeMap集合
char[] c=str.toCharArray();                                     //将字符串转换为字符数组
        for(char cs:c){
        Integer i=map.get(cs);
        if(i==null){
        map.put(cs, 1);
        }else{
        i++;
        map.put(cs,i);
        }
        }
       Set<Map.Entry<Character, Integer>> entrySet=map.entrySet();     //将键和值存储到Set集合中
       Iterator<Map.Entry<Character, Integer>> it=entrySet.iterator(); //Iterator遍历集合 
       while (it.hasNext()){                                        
         Map.Entry<Character, Integer> me=it.next();
         Character key=me.getKey();
         Integer value=me.getValue();
             System.out.print(key+"("+value+")");
       }      
}
}

2.每一个省份都对应着很多城市,要求:
  通过省份可以查询出对应的城市;

  通过城市也能查询出所属的省份。

package treemap;
import java.util.*;
import java.util.Map.Entry;
public class ProvinceAndCity {
public static void main(String[] args) {
HashMap<String,String> map=new HashMap<String,String>();
map.put("陕西", "西安");
map.put("广东", "广州");
map.put("云南", "昆明");
map.put("四川", "成都");
map.put("海南", "三亚");
Set<Map.Entry<String, String>> entrySet=map.entrySet();
 Iterator<Entry<String, String>> it=entrySet.iterator(); //Iterator遍历集合 
      while (it.hasNext()){                                        
         Entry<String, String> me=it.next();
         String key=me.getKey();
         String value=me.getValue();
         System.out.print("省份对应城市:");
            System.out.println(key+"==>"+value);
      }      
}

}

只写了省份—>城市


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值