Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #34368

Re: how does one explain this syntax?

From Knute Johnson <nospam@rabbitbrush.frazmtn.com>
Newsgroups comp.lang.java.programmer
Subject Re: how does one explain this syntax?
Date 2016-05-22 08:41 -0700
Organization A noiseless patient Spider
Message-ID <nhsjoi$hd4$1@dont-email.me> (permalink)
References <nhrhd5$7r6$1@reader1.panix.com>

Show all headers | View raw


On 5/21/2016 22:51, ruben safir wrote:
> This passes for a demonstration and teaching example for a TreeMap
>
>
> import java.util.TreeMap;
> import java.util.Set;
> import java.util.Iterator;
> import java.util.Map;
>
> public class Details {
>
>    public static void main(String args[]) {
>
>       /* This is how to declare TreeMap */
>       TreeMap<Integer, String> tmap =
>              new TreeMap<Integer, String>(); <<studdering is always good
>
>       /*Adding elements to TreeMap*/
>       tmap.put(1, "Data1");
>       tmap.put(23, "Data2");
>       tmap.put(70, "Data3");
>       tmap.put(4, "Data4");
>       tmap.put(2, "Data5");
>
>       /* Display content using Iterator*/
>       Set set = tmap.entrySet(); <<random obscure syntax... that is a
> constructor for another class?
>       Iterator iterator = set.iterator(); <<again, twice?
>       while(iterator.hasNext()) {
>          Map.Entry mentry = (Map.Entry)iterator.next();  <<What the heck
> is this?
>          System.out.print("key is: "+ mentry.getKey() + " & Value is:
> "); <<How many levels of random systax does one need to just to do a loop?
>          System.out.println(mentry.getValue());
>       }
>
>    }
> }
>

It's not a modern example of how to iterate over a TreeMap but I suspect 
that it was also to give an example of how to use Map.Entry.  If you 
just want to print out the entries of the map in order you would use 
something similar to this now.

import java.util.*;

public class test {
     public static void main(String... args) {
         TreeMap<Integer,String> tmap = new TreeMap<>();
         tmap.put(1,"Data1");
         tmap.put(23,"Data2");
         tmap.put(70,"Data3");
         tmap.put(4,"Data4");
         tmap.put(2,"Data5");

         for (Integer key : tmap.keySet())
             System.out.printf("key is: %d & value is: %s\n",
              key,tmap.get(key));
     }
}

C:\Users\Knute Johnson>java test
key is: 1 & value is: Data1
key is: 2 & value is: Data5
key is: 4 & value is: Data4
key is: 23 & value is: Data2
key is: 70 & value is: Data3

Keeping a SortedMap can be expensive and if you only occasionally need 
it to be sorted you can sort the key set before you interrogate the Map.

import java.util.*;

public class test1 {
     public static void main(String... args) {
         Map<Integer,String> tmap = new HashMap<>();
         tmap.put(1,"Data1");
         tmap.put(23,"Data2");
         tmap.put(70,"Data3");
         tmap.put(4,"Data4");
         tmap.put(2,"Data5");

         for (Integer key : new TreeSet<Integer>(tmap.keySet()))
             System.out.printf("key is: %d & value is: %s\n",
              key,tmap.get(key));
     }
}

C:\Users\Knute Johnson>java test1
key is: 1 & value is: Data1
key is: 2 & value is: Data5
key is: 4 & value is: Data4
key is: 23 & value is: Data2
key is: 70 & value is: Data3



-- 

Knute Johnson

Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

how does one explain this syntax? ruben safir <ruben@mrbrklyn.com> - 2016-05-22 01:51 -0400
  Re: how does one explain this syntax? Martin Gregorie <martin@address-in-sig.invalid> - 2016-05-22 10:05 +0000
  Re: how does one explain this syntax? Eric Sosman <esosman@comcast-dot-net.invalid> - 2016-05-22 07:21 -0400
    Re: how does one explain this syntax? Popping mad <rainbow@colition.gov> - 2016-05-22 20:21 +0000
      Re: how does one explain this syntax? Lars Enderin <lars.enderin@telia.com> - 2016-05-22 22:32 +0200
      Re: how does one explain this syntax? Eric Sosman <esosman@comcast-dot-net.invalid> - 2016-05-22 17:32 -0400
      Re: how does one explain this syntax? Lew <lewbloch@gmail.com> - 2016-05-23 14:36 -0700
    Re: how does one explain this syntax? Lew <lewbloch@gmail.com> - 2016-05-23 14:34 -0700
  Re: how does one explain this syntax? Knute Johnson <nospam@rabbitbrush.frazmtn.com> - 2016-05-22 08:41 -0700
    Re: how does one explain this syntax? Robert Klemme <shortcutter@googlemail.com> - 2016-05-22 22:22 +0200
      Re: how does one explain this syntax? Knute Johnson <nospam@rabbitbrush.frazmtn.com> - 2016-05-22 22:13 -0700
        Re: how does one explain this syntax? Eric Sosman <esosman@comcast-dot-net.invalid> - 2016-05-23 07:32 -0400
          Re: how does one explain this syntax? Robert Klemme <shortcutter@googlemail.com> - 2016-05-23 04:57 -0700
  Re: how does one explain this syntax? Popping mad <rainbow@colition.gov> - 2016-05-22 20:23 +0000
  Re: how does one explain this syntax? Roedy Green <inquiry@mindprod.com> - 2016-05-30 21:51 -0700
  Re: how does one explain this syntax? Roedy Green <inquiry@mindprod.com> - 2016-05-30 21:54 -0700
  Re: how does one explain this syntax? Roedy Green <inquiry@mindprod.com> - 2016-05-30 22:00 -0700
  Re: how does one explain this syntax? Roedy Green <inquiry@mindprod.com> - 2016-05-30 22:17 -0700

csiph-web