Map练习

public class MapDemo {
 public static void main(String[] args) {
// getKeyV();
// getWor();
//  String str="abcdv,.,.s,.,abcda";
//  charStr(str);
//  show(1,3);
//  Properties pro=System.getProperties();
//  for(Object obj:pro.keySet())
//  {
//   String string=(String) pro.get(obj);
//   System.out.println(obj+"------"+string);
//  }
//  Date date=new Date();
//  System.out.println(date+"\n");
//  Calendar  c=Calendar.getInstance();
//  System.out.println(c.get(c.YEAR)+"\n"+c);
  for(int x=0; x<5; x++){
   int t=(int) (Math.random()*10+1);
   System.out.println(t);
  }
  
 }
 public static void getKeyV()
 {
  Map<String,String> map=new HashMap<String, String>();
  map.put("02", "beijing");
  map.put("01", "tianjing");
  map.put("03", "shanghai");
  map.put("04", "nanjing");
  Set<Map.Entry<String, String>> entrySet=map.entrySet();
  Iterator<Entry<String, String>> it=entrySet.iterator();
//  Set<String> keySet=map.keySet();
//  Iterator<String> it1=keySet.iterator();
  while(it.hasNext())
  {
   Map.Entry<String, String> entry=it.next();
   String key=entry.getKey();
   String value=entry.getValue();
   System.out.println(key+"---"+value);
  }
 }
 public static void getWor()
 {
  Map<Worker, String> map=new TreeMap<Worker, String>(new WorNum());
  map.put(new Worker("zhaosi1",19), "shanghai");
  map.put(new Worker("zhaosi2",21), "nanjing");
  map.put(new Worker("zhaosi4",18), "tianjin");
  map.put(new Worker("zhaosi3",32), "shanghai");
  map.put(new Worker("zhaosi5",18), "tianjin");
  map.put(new Worker("zhaosi5",18), "tianjin");
  Set<Entry<Worker, String>> entrySet=map.entrySet();
  Iterator<Entry<Worker, String>> it=entrySet.iterator();
//  Set<String> keySet=map.keySet();
//  Iterator<String> it1=keySet.iterator();
  while(it.hasNext())
  {
   Entry<Worker, String> entry=it.next();
   Worker worker=entry.getKey();
   System.out.println(worker.getAge()+"---"+worker.getName()+"----"+worker);
  }
 }
 public  static void charStr(String str) {
  char[] chs=str.toCharArray();
  Map<Character,Integer> map=new TreeMap<Character,Integer>();
  int count=0;
  for(int x=0;x<chs.length;x++)
  {
   if(!(chs[x]>='a'&&chs[x]<='z'||chs[x]>='A'&&chs[x]<='Z'))
    continue;
   Integer value=map.get(chs[x]);
//   if(value==null)
//    map.put(chs[x], 1);
//   else
//   {
//    value=value+1;
//    map.put(chs[x], value);
//   }
   if(value!=null)
    count=value;
   count++;
   map.put(chs[x], count);
   count=0;
   
  }
  System.out.println(map);
  StringBuilder sb=new StringBuilder();
  Set<Map.Entry<Character, Integer>> entry=map.entrySet();
  Iterator<Map.Entry<Character, Integer>> it=entry.iterator();
  while(it.hasNext())
  {
   Map.Entry<Character, Integer> me =it.next();  
    sb.append(me.getKey()+"("+me.getValue()+")");      
  }
   String string=sb.toString();
   System.out.println(string);
 }
 public static void show(int... arr)
 {
  System.out.println(arr.length);
 }
}
class Worker implements Comparable<Worker>
{
 private String name;
 private int age;
 public int getAge()
 {
  return age;
 }
 public void setAge(int age)
 {
  this.age = age;
 }
 Worker(String name,int age)
 {
  this.name=name;
  this.age=age;
 }
 public void setName(String name)
 {
  this.name=name;
  
 }
 public String getName()
 {
  return name;
 }
 public int compareTo(Worker o)
 {
  // TODO Auto-generated method stub
  int num =new Integer(this.age).compareTo(new Integer(o.age));
  if(num==0)
   return this.name.compareTo(o.name);
  return num;
 }
 public int hashCode()
 { 
  return name.hashCode()+age*21;  
 }
 public boolean equals(Object obj)
 {
  if(!(obj instanceof Worker))
   throw new ClassCastException("类型那个不匹配");
  Worker w=(Worker)obj;
  return this.name.equals(w.name)&this.age==w.age;
  
 }
}
class WorNum implements Comparator<Worker>
{
 public int compare(Worker o1, Worker o2) {
  // TODO Auto-generated method stub
  int num=o1.getName().compareTo(o2.getName());
   if(num==0)
    return new Integer(o1.getAge()).compareTo(new Integer(o2.getAge()));
  return num;
 }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

csdn_金手指

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值