| 
   
 
 import java.util.HashSet;
 import java.util.Iterator;
 import java.util.Set;
 
 public class Main {
 
 public static boolean isNumber(final Class dataType) {
 return Number.class.isAssignableFrom(dataType);
 }
 
 public static void main(final String[] args) {
 
 final Set classes = new HashSet();
 classes.add(Class.class);
 
 System.out.println("Using isAssignableFrom:");
 useAssignable(classes);
 System.out.println("\nUsing isInstance:");
 useIsInstance(classes);
 }
 
 
 public static void useAssignable(final Set inputSet) {
 final Iterator iter = inputSet.iterator();
 Object obj = null;
 
 while (iter.hasNext()) {
 obj = iter.next();
 if (obj != null) {
 if (Number.class.isAssignableFrom(obj.getClass())) {
 System.out.println(obj);
 }
 }
 }
 }
 
 
 public static void useIsInstance(final Set inputSet) {
 final Iterator iter = inputSet.iterator();
 Object obj = null;
 
 while (iter.hasNext()) {
 obj = iter.next();
 if (Number.class.isInstance(obj)) {
 System.out.println(obj);
 }
 }
 }
 
 public static void useIsInstance2(final Class dataType, final Set inputSet) {
 if (dataType == null) {
 throw new NullPointerException();
 }
 
 final Iterator iter = inputSet.iterator();
 Object obj = null;
 
 while (iter.hasNext()) {
 obj = iter.next();
 if (dataType.isInstance(obj)) {
 System.out.println(obj);
 }
 }
 }
 
 }
 
 
 
 
 
 |