Advertisement :
   Log In    OR    Register  
  Topics :  
RMI Example

Home >>> Coding Tips on Java >>> Java Comparable and Comparator >>> Using Java Technology
Struts Tutorials:
Struts2 Tag CheckBoxList
, Checkbox, Iterator, IF
Struts2 Tag Library Example Struts2 Tiles Example Struts2 Tiles I18N Example Struts2 Questions Struts Tiles I18N Example Struts Eclipse MVC Struts2 Tags Struts2 Example and Tutorial Struts MVC Struts2 Validation
Hibernate Tutorials: Hibernate Case Study Class Hierarchy Persist Example Using Hibernate Interceptor Hibernate Questions with Answer Hibernate Many-to-Many Mapping Example Hibernate one-to-many Mapping Example Hibernate and ORM tools Spring Hibernate Example Hibernate SessionFactory Example Hibernate Mapping Class Hierarchy Hibernate Questions Hibernate SessionFactory Questions Spring Hibernate Example: Spring Hibernate Case Study

Written By : Amit
Title :
Customizing JTree using Swing
Description : AWT using Java Technology
More...


Written By : Amit
Title :
Event handling and Java Technology
Description : Event handling and Java Technology
More...


Written By : admin
Title :
Using Final Keyword
Description : Example on using Final Keyword in Java code
More...


Written By : Amit
Title :
In memory AWT Image Creation
Description : Java Code
More...


Written By : Amit
Title :
Java Integral Types
Description : Java Types with Bit size
More...


Written By : Amit
Title :
Search Class in JAR
Description : Using Java Technology
More...


Written By : Amit
Title :
Move component on Java Applet
Description : Drag and Drop
More...

Tags/Keywords : Using-Java-Technology - Java-Comparable-and-Comparator - Coding-Tips-on-Java Example
Author : Amit
Date (Year/Month/Date): 2009-01-27 Java Comparable and Comparator using Java Technology

Please be informed that NONE of the design/code from this
page is claiming to be some sort of best practices and we DO NOT expect
any of our visitor/reader of this page to assume this as some sort of
best practice for any context and should not be using this 
as it is without appropriate evaluation to their, so to say, 
specific programming context.

This page intends only to provide bit and piece of known ways  for
doing some sort of example and may not be fit for any other purpose.

Advertisement :
Java Questions and My Opinions What is the sorting implementation Java Technology provides and how to use it effectively? Explaination: There are two ways sorting of objects can be done, one that is decided while coding and the objects to be sorted are designed and developed, taking sorting implementation into consideration. Like the objects to be sorted should have its class implement java.lang.Comparable interface and implement compareTo(Object obj) method. Another way is to write a comparator class, that implements java.util.Comparator interface and implements compare(Object obj1, Object obj2) and this comparator is bound to a specific type of comparing requirement, but in this way of comparison, the original object is used as it is. Let us take an example to understand it even more clearly. Suppose there is a class Student, and it has two fields name and age. Now let us consider the first case, where our Student class implements java.lang.Comparable, and has compareTo method implemented as follows: ------------------------------------------------ public class Student implements Comparable { String name; int age; public Student(String name, int age) { this.name = name; this.age = age; } public int compareTo(Object obj) { //if sorting is required to be based on name. //descending alphabetical order, as it returns negative //value. return -(this.name.compareTo(((Student)obj).name)); } } ------------------------------------------------- Here the comparison is based on name and alphabetically descending order. Now if multiple objects of Student class are created and added to a Set implementation like TreeSet, then by default all the items will be automatically sorted as descending alphabetically by Student.name. Suppose this Student class doesn't implement Comparable and is part of a JAR file, and developer is instructed not to change this Student class, but to list all the Student Objects descending alphabetically by Student.name. Then in this case, the second approach (as already discussed) comes to rescue. Here Another class is introduced, known as comparator, as this class implements java.util.Comparator and this comparator class implements compareTo(Object obj1, Object obj2) method, and this comparator is not generic but bound to Student class only, as it is going to hard code comparison logic based on the Student.name, as follows: public int compare(Object obj1,Object obj2) { return -((((Student)obj1).name) .compareTo(((Student)obj2).name)); } And java.util.Collections.sort(List objList, Comparator comparator) can be used to sort objList (Student objects stored in a java.util.ArrayList), as per the comparator passed as argument. In this above example, Student class is hard coded in the compare method of the comparator, but this means for every class to be sorted, one has to create a comparator, and this means a lot of comparators in the application and growing, there could be some alternative elegant approach to this, I have written a generic comparator using reflection to dynamically use the class object to come up with the appropriate compare implementation. It will be good if we shall walk through this example. Please try this by some small sample program, and this concept is really interesting to explore. All contents of this site are copyrighted by the Author, Contact Author Reproduction of any of these material from this site, in any form, is strictly prohibited.
Advertisement :
Author of this article/writeup has expressed his/her willingness
to help or guide users with any technical difficulties he/she faces while working with the example code environment setting up, running and resolving any such exception raised during compile or at runtime. You may ask for any technical doubt or seek technical help related to this article by using following form to reach for technical help from the Author for FREE. This article's Author shall be reading your request and responding within reasonable time (no resolution timeframe defined as such).


	

Commented By ->
ISHTEK
I have written an article along with example code
for showing an approach of using Java Reflection, along with
Comparator interface to make sorting much
simpler and using Java Technology.

It can be seen at
http://www.interview-questions-tips-forum.net/index.php/Coding-Tips-on-Java/Java-Reflection-Comparator/Java-Common-Comparator

Please comment on this and we shall make it much useful.

Commented By ->
sneha
please tell me how i generate automatic numbers 
using Java and also from accessing using MSaccess

Commented By ->
Amit
If your question is towards the Random number generation
using Java, then please refer Javadoc API for Random class
for example:

http://java.sun.com/j2se/1.4.2/docs/api/java/util/Random.html

and for your question regarding MS Access, Pls refer JExcelApi
from http://jexcelapi.sourceforge.net/, and there are many 
utility framework available in this space.

Please do let me know if this answers your questions.

Commented By ->
Nagarjuna
1. How to mapping two tables(database tables for exmpale emp,dept) in hibernate?

2.How to configure the spring?

3. how to integrate sping and hibernate?

4.Explain project architecture?

5. Spring web mvc,aop,Ioc flow with coding?
Are you interested in solving a very interesting Technology Stack while Playing this Game          

Please write your Comment on this Matter
(This will be visible if found suitable):
Name: *
Email (will not be displayed): *
Matter: *
33,4
Enter bigger number from above :*
Home >>> Coding Tips on Java >>> Java Comparable and Comparator >>> Using Java Technology
Visitor/User referred related external URL:
(Visible upon review and approved by this site Administrator)
Referred By Name *:
Resource URL *: (e.g, URL should be starting with http://www.-----.---)
 
Resource Short Description *:
24,3
Enter bigger number from above : *

Please log in to add or reply to any matter<- requires login
Log in or Register
Copyright © 2008-2009, Interview-Questions-Tips-Forum, All Rights Reserved.
CONTACT    PRIVACY POLICY    DISCLAIMER
Terms of Use and Disclaimer :

This web site provides some of the information about various technologies, example 
code, tips, tutorials etc. Like any printed materials, content of these pages may 
become out of date over a period of time. Therefore all visitor/users of this web 
site are requested/advised to refer to the originating parties/sources for the 
latest changes and happenings for detailed information. This information is not 
intended to be a substitute for the original reference provided by the originating 
parties/sources.

By accessing and using this website in any ways, including, without
limitation, browsing the website pages, using any information, using any content and/or 
downloading any materials, you agree to and are bound by the terms of use 
described in this page and Usage Terms and Conditions. 
If you do not agree to all of 
the terms and conditions contained in the terms of use described in this
page and Usage Terms and Conditions, do not use this 
website in any manner. If you are using the website on behalf of your 
employer, you represent that you are authorized to accept these Terms of Use 
on your employer's behalf.

All Trademarks are property of their respective owner. Appropriate measure is being
taken for providing accurate and up-to-date information but like any printed materials,
these blog(s)/contents may eventually be outdated one day, so if you are using any 
of these information, please refer original content/documentation from respective sources. 
And under no circumstances shall the Author of these contents and/or this web site
be liable for any loss, damage, expense incurred or suffered which is claimed to have
occurred because of usage of the contents of this web site.
If you have any questions/queries/feedback/suggestions then please write to this web
site owner at contact.