Java TreeSet clone() Method



Description

The Java TreeSet clone() method is used to return a shallow copy of this TreeSet instance.

Declaration

Following is the declaration for java.util.TreeSet.clone() method.

public Object clone()

Parameters

NA

Return Value

The method call returns a shallow copy of this set.

Exception

NA

Cloning a TreeSet of Integer Example

The following example shows the usage of Java TreeSet clone() method to get a clone of the treeset. We've created two TreeSet objects of Integer. Then few entries are added using add() method to first treeset and treeset object is cloned using clone() method and then we've printed the cloned tree to check its contents.

package com.tutorialspoint;

import java.util.TreeSet;

public class TreeSetDemo {
   public static void main(String[] args) {

      // creating TreeSet 
      TreeSet <Integer>treeset = new TreeSet<>();
      TreeSet <Integer>clonetree = new TreeSet<>();

      // adding in the tree
      treeset.add(12);
      treeset.add(13);
      treeset.add(14);

      // cloning tree into clinetree
      clonetree = (TreeSet)treeset.clone();  
    
      // displaying the Tree set data
      System.out.print("Tree set : " + clonetree);
   }    
}

Output

Let us compile and run the above program, this will produce the following result.

Tree set : [12, 13, 14]

Cloning a TreeSet of String Example

The following example shows the usage of Java TreeSet clone() method to get a clone of the treeset. We've created two TreeSet objects of String. Then few entries are added using add() method to first treeset and treeset object is cloned using clone() method and then we've printed the cloned tree to check its contents.

package com.tutorialspoint;

import java.util.TreeSet;

public class TreeSetDemo {
   public static void main(String[] args) {

      // creating TreeSet 
      TreeSet <String>treeset = new TreeSet<>();
      TreeSet <String>clonetree = new TreeSet<>();

      // adding in the tree
      treeset.add("12");
      treeset.add("13");
      treeset.add("14");

      // cloning tree into clinetree
      clonetree = (TreeSet)treeset.clone();  
    
      // displaying the Tree set data
      System.out.print("Tree set : " + clonetree);
   }    
}

Output

Let us compile and run the above program, this will produce the following result.

Tree set : [12, 13, 14]

Cloning a TreeSet of Object Example

The following example shows the usage of Java TreeSet clone() method to get a clone of the treeset. We've created two TreeSet objects of Student. Then few entries are added using add() method to first treeset and treeset object is cloned using clone() method and then we've printed the cloned tree to check its contents.

package com.tutorialspoint;

import java.util.TreeSet;

public class TreeSetDemo {
   public static void main(String[] args) {

      // creating TreeSet 
      TreeSet <Student>treeset = new TreeSet<>();
      TreeSet <Student>clonetree = new TreeSet<>();

      // adding in the tree set
      treeset.add(new Student(1, "Robert"));
      treeset.add(new Student(2, "Julie"));
      treeset.add(new Student(3, "Adam"));
      treeset.add(new Student(4, "Julia"));

      // cloning tree into clinetree
      clonetree = (TreeSet)treeset.clone();  
    
      // displaying the Tree set data
      System.out.print("Tree set : " + clonetree);
   }    
}
class Student implements Comparable<Student> {
   int rollNo;
   String name;

   Student(int rollNo, String name){
      this.rollNo = rollNo;
      this.name = name;
   }

   @Override
   public String toString() {
      return "[ " + this.rollNo + ", " + this.name + " ]";
   }
   
   @Override
   public boolean equals(Object obj) {
      Student s = (Student)obj;
      return this.rollNo == s.rollNo && this.name.equalsIgnoreCase(s.name);
   }

   @Override
   public int compareTo(Student student) {
      return this.rollNo - student.rollNo;
   }
}

Output

Let us compile and run the above program, this will produce the following result.

Tree set : [[ 1, Robert ], [ 2, Julie ], [ 3, Adam ], [ 4, Julia ]]
java_util_treeset.htm
Advertisements