• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

How can I sort an array of strings, but not by 1st character?

 
Larry Sigmon
Greenhorn
Posts: 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Each string is a date in MMDDYYYY format.
I need to sort by YYYY then MM then DD.
Arrays.sort(string)will not work.
Any ideas?
 
Fred Abbot
Ranch Hand
Posts: 300
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
why dont you turn the string around so it is
yyyymmdd ?
 
Stephen Peterson
Ranch Hand
Posts: 33
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Larry,
I haven't done much myself yet with the Array class, but a quick look at the javadoc index (S for sort) shows
static void (sort Object[] a, Comparator c)
You can define a dateCompare class that implements the Comparator interface type that has the behavior you want in the compare method that has formal parameters like:
int compare(Object o1, Object o2)
the return value, exceptions thrown, and other methods that require implementation (equals method) can be found in javaDoc under the Comparator interface.
Granted, this reply is not a detailed, working example code listing that you can copy/paste into your program, but it has a few hints that might help you in the general direction you might want to go, and I or others can fill in missing details as you discover them.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic