User Tools

Site Tools


java:jfc_intf_sorted_set_map

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
java:jfc_intf_sorted_set_map [2015/03/23 07:01] – [java.util.SortedSet] gthanosjava:jfc_intf_sorted_set_map [2020/03/15 18:48] (current) – external edit 127.0.0.1
Line 10: Line 10:
   * **[[http://docs.oracle.com/javase/7/docs/api/java/util/SortedSet.html#subSet(E,%20E)|subSet(E fromElement, E toElement)]] - ** Επιστρέφει το υποσύνολο του Set από fromElement (μαζί με το fromElement) έως toElement (χωρίς το toElement).   * **[[http://docs.oracle.com/javase/7/docs/api/java/util/SortedSet.html#subSet(E,%20E)|subSet(E fromElement, E toElement)]] - ** Επιστρέφει το υποσύνολο του Set από fromElement (μαζί με το fromElement) έως toElement (χωρίς το toElement).
  
-<code java NameSortedSet.java> +<code java StudentSortedSet.java> 
-iimport java.util.*;+import java.util.*;
  
-public class NameSortedSet {+public class StudentSortedSet { 
 +    
 + 
 +  public static void main(String[] args) { 
 +     
 +    SortedSet<Student> students = new TreeSet<Student>(); 
 +    students.add(new Student("John", "Smith")); 
 +    students.add(new Student("Stanley", "Peters")); 
 +    students.add(new Student("Edgar", "Bloch")); 
 +    students.add(new Student("Suzan", "Miles")); 
 +    students.add(new Student("Mary", "Poppins")); 
 +    students.add(new Student("Tom", "Rich")); 
 +    for(Student n: students) 
 +      System.out.println(n); 
 +       
 +    System.out.println("\n***Print headset***"); 
 +       
 +    SortedSet<Student> subStudents = students.headSet(new Student("Mary", "Poppins")); 
 +    for(Student s: subStudents) 
 +      System.out.println(s); 
 +       
 +    System.out.println("\n***Print tailset***"); 
 +       
 +    subStudents = students.tailSet(new Student("Mary", "Poppins")); 
 +    for(Student s: subStudents) 
 +      System.out.println(s); 
 +  } 
 +
 +</code> 
 + 
 +<WRAP center round 60% tip>Στο παραπάνω παράδειγμα δείτε πως αλλάζει η κατάταξη αν αφαιρέσετε τον //Comparator// από τον κατασκευαστή του αντικειμένου //names//
 +</WRAP> 
 + 
 +===== java.util.SortedMap ===== 
 + 
 +Τo interface //SortedMap// είναι ένα //Map// που διατηρεί τα κλειδιά του σε αύξουσα σειρά με βάση την υλοποίηση του interface //Comparable// ή της κλάσης Comparator τα κλειδιά. Οι επιπλέον μέθοδοι του συγκεκριμένου interface είναι οι εξής 
 +  * **[[http://docs.oracle.com/javase/7/docs/api/java/util/SortedMap.html#firstKey()|firstKey()]] - ** Επιστρέφει το 1ο κλειδί. 
 +  * **[[http://docs.oracle.com/javase/7/docs/api/java/util/SortedMap.html#lastKey()|lastKey()]] - ** Επιστρέφει το τελευταίο κλειδί. 
 +  * **[[http://docs.oracle.com/javase/7/docs/api/java/util/SortedMap.html#headMap(K)|headMap(K toKey)]] - ** Επιστρέφει το υποσύνολο του Map που τα κλειδιά του είναι μικρότερα από την τιμή //toKey//
 +  * **[[http://docs.oracle.com/javase/7/docs/api/java/util/SortedMap.html#tailMap(K)|tailMap(K fromKey)]] - ** Επιστρέφει το υποσύνολο του Map που τα κλειδιά του του είναι μεγαλύτερα ή ίσα από την τιμή //fromKey//
 +  * **[[http://docs.oracle.com/javase/7/docs/api/java/util/SortedMap.html#subMap(K,%20K)|subMap(K fromKey, K toKey)]] - ** Επιστρέφει το υποσύνολο του Set από fromKey (μαζί με το fromKey) έως toKey (χωρίς το toKey). 
 + 
 +<code java NameProperty.java> 
 +import java.util.*; 
 + 
 +public class NameProperty { 
 +  private String email; 
 +  private String address; 
 + 
 +  public NameProperty(String mail, String address) { 
 +    this.email = mail; 
 +    this.address = address; 
 +  } 
 + 
 +  public String getEmail() { return email; } 
 +  public String getAddress() { return address; } 
 + 
 +  public void setEmail(String mail) { email = mail; } 
 +  public void setAddress(String address) { this.address = address; } 
 +   
 +  public String toString() { return "email: "+email+", address: "+address;
 +
 +</code> 
 + 
 +<code java NameSortedMap.java> 
 +import java.util.*; 
 + 
 +public class NameSortedMap {
    static final Comparator<Name> NameOrdering =     static final Comparator<Name> NameOrdering = 
                                         new Comparator<Name>() {                                         new Comparator<Name>() {
Line 24: Line 91:
     public static void main(String[] args) {     public static void main(String[] args) {
                  
-        SortedSet<Name> names = new TreeSet<Name>(NameOrdering); +        SortedMap<Name,NamePropertyusers = new TreeMap<Name,NameProperty>(NameOrdering); 
-        names.add(new Name("Bob", "Travolta")); +        users.put(new Name("Bob", "Travolta"), new NameProperty("bob@travolta.com", "Gklavani 37, 1st floor") ); 
-        names.add(new Name("John", "Smith")); +        users.put(new Name("John", "Smith"), new NameProperty("john@smith.com", "Gklavani 37, 2nd floor") ); 
-        names.add(new Name("Karl", "Ng")); +        users.put(new Name("Karl", "Ng"), new NameProperty("karl@ng.com", "Gklavani 37, 3rd floor") ); 
-        names.add(new Name("Jeff", "Smith")); +        users.put(new Name("Jeff", "Smith"), new NameProperty("jeff@smith.com", "Gklavani 37, 4th floor") ); 
-        names.add(new Name("Tom", "Rich")); +        users.put(new Name("Tom", "Rich"), new NameProperty("tom@rich.com", "Gklavani 37, 5tht floor") ); 
-        for(Name nnames+        for(Map.Entry<Name,NameProperty> uusers.entrySet()
-          System.out.println(n);+          System.out.println(u);
                      
-        System.out.println("\n***Print headset***");+        System.out.println("\n***Print headmap***");
                      
-        SortedSet<Name> subnames names.headSet(new Name("Karl", "Ng")); +        SortedMap<Name,NamePropertysubusers users.headMap(new Name("Karl", "Ng")); 
-        for(Name nsubnames+        for(Map.Entry<Name,NameProperty> usubusers.entrySet()
-          System.out.println(n);+          System.out.println(u);
                      
-        System.out.println("\n***Print tailset***");+        System.out.println("\n***Print tailmap***");
                      
-        subnames names.tailSet(new Name("Karl", "Ng")); +        subusers users.tailMap(new Name("Karl", "Ng")); 
-        for(Name nsubnames+        for(Map.Entry<Name,NameProperty> usubusers.entrySet()
-          System.out.println(n);+          System.out.println(u);
     }     }
 } }
 </code> </code>
  
-<WRAP center round 60% tip>Στο παραπάνω παράδειγμα δείτε πως αλλάζει η κατάταξη αν αφαιρέσετε τον //Comparator// από τον κατασκευαστή του αντικειμένου //names//+ροηγούμενο[[:java:jfc_intf_sort Sorting  ]] [[:toc Περιεχόμενα ]] Επόμενο[[:java:jfc_algorithmsΑλγόριθμοι ]] |
-</WRAP> +
- +
-===== java.util.SortedMap ===== +
- +
-Τo interface //SortedMap// είναι ένα //Map// που διατηρεί τα κλειδιά του σε αύξουσα σειρά με βάση την υλοποίηση του interface //Comparable// ή της κλάσης Comparator τα κλειδιά. Οι επιπλέον μέθοδοι του συγκεκριμένου interface είναι οι εξής +
-  * **[[http://docs.oracle.com/javase/7/docs/api/java/util/SortedMap.html#firstKey()|firstKey()]] - ** Επιστρέφει το 1ο κλειδί. +
-  * **[[http://docs.oracle.com/javase/7/docs/api/java/util/SortedMap.html#lastKey()|lastKey()]] - ** Επιστρέφει το τελευταίο κλειδί. +
-  * **[[http://docs.oracle.com/javase/7/docs/api/java/util/SortedMap.html#headMap(K)|headMap(K toKey)]] - ** Επιστρέφει το υποσύνολο του Map που τα κλειδιά του είναι μικρότερα από την τιμή //toKey//+
-  * **[[http://docs.oracle.com/javase/7/docs/api/java/util/SortedMap.html#tailMap(K)|tailMap(K fromKey)]] - ** Επιστρέφει το υποσύνολο του Map που τα κλειδιά του του είναι μεγαλύτερα ή ίσα από την τιμή //fromKey//+
-  * **[[http://docs.oracle.com/javase/7/docs/api/java/util/SortedMap.html#subMap(K,%20K)|subMap(K fromKey, K toKey)]] - ** Επιστρέφει το υποσύνολο του Set από fromKey (μαζί με το fromKey) έως toKey (χωρίς το toKey). +
- +
java/jfc_intf_sorted_set_map.1427094114.txt.gz · Last modified: 2015/03/23 07:01 by gthanos