/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
import java.time.*;
import java.time.temporal.*;
import java.time.format.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
Ideone app = new Ideone() ;
app.process( "22/01/2010 to 23/01/2010" );
app.process( "22/01/2010" );
app.process( "pink bunnies" );
}
private void process
( String input
) {
// String input is:
// (a) long: "22/01/2010 to 23/01/2010".
// (b) short: "22/01/2010".
// (c) null.
DateTimeFormatter f = DateTimeFormatter.ofPattern( "dd/MM/uuuu" ) ;
if( input.length() == 24 ) { // Ex: "22/01/2010 to 23/01/2010"
List<LocalDate> lds = new ArrayList<>( 2 );
String[] inputs
= input.
split( " to " ); for( String nthInput
: inputs
) { LocalDate ld = LocalDate.parse( nthInput , f ) ;
lds.add( ld );
}
System.
out.
println( "Result: " + lds
); // Do what you want with `LocalDate` objects collection.
} else if( input.length() == 10 ) { // Ex: "22/01/2010"
LocalDate ld = LocalDate.parse( input , f ) ;
System.
out.
println( "Result: " + ld
); // Do what you want with `LocalDate` object.
} else if( input == null ) {
System.
out.
println( "xxx" ); // Decide what you want to do for null input.
} else {
System.
out.
println( "Unexpected input: " + input
) ; }
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgppbXBvcnQgamF2YS50aW1lLio7CmltcG9ydCBqYXZhLnRpbWUudGVtcG9yYWwuKjsKaW1wb3J0IGphdmEudGltZS5mb3JtYXQuKjsKCi8qIE5hbWUgb2YgdGhlIGNsYXNzIGhhcyB0byBiZSAiTWFpbiIgb25seSBpZiB0aGUgY2xhc3MgaXMgcHVibGljLiAqLwpjbGFzcyBJZGVvbmUKewoJcHVibGljIHN0YXRpYyB2b2lkIG1haW4gKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBqYXZhLmxhbmcuRXhjZXB0aW9uCgl7CiAgICAgICAgSWRlb25lIGFwcCA9IG5ldyBJZGVvbmUoKSA7CiAgICAgICAgYXBwLnByb2Nlc3MoICIyMi8wMS8yMDEwIHRvIDIzLzAxLzIwMTAiICk7CiAgICAgICAgYXBwLnByb2Nlc3MoICIyMi8wMS8yMDEwIiApOwogICAgICAgIGFwcC5wcm9jZXNzKCAicGluayBidW5uaWVzIiApOwoKCX0KCQoJcHJpdmF0ZSB2b2lkIHByb2Nlc3MoIFN0cmluZyBpbnB1dCApIHsKCi8vIFN0cmluZyBpbnB1dCBpczoKLy8gKGEpIGxvbmc6ICIyMi8wMS8yMDEwIHRvIDIzLzAxLzIwMTAiLiAKLy8gKGIpIHNob3J0OiAiMjIvMDEvMjAxMCIuCi8vIChjKSBudWxsLgoKRGF0ZVRpbWVGb3JtYXR0ZXIgZiA9IERhdGVUaW1lRm9ybWF0dGVyLm9mUGF0dGVybiggImRkL01NL3V1dXUiICkgOwoKaWYoIGlucHV0Lmxlbmd0aCgpID09IDI0ICkgeyAgICAgICAgICAgLy8gRXg6ICIyMi8wMS8yMDEwIHRvIDIzLzAxLzIwMTAiCiAgICBMaXN0PExvY2FsRGF0ZT4gbGRzID0gbmV3IEFycmF5TGlzdDw+KCAyICk7CiAgICBTdHJpbmdbXSBpbnB1dHMgPSBpbnB1dC5zcGxpdCggIiB0byAiICk7CiAgICBmb3IoIFN0cmluZyBudGhJbnB1dCA6IGlucHV0cyApIHsKICAgICAgICBMb2NhbERhdGUgbGQgPSBMb2NhbERhdGUucGFyc2UoIG50aElucHV0ICwgZiApIDsKICAgICAgICBsZHMuYWRkKCBsZCApOwogICAgfQogICAgU3lzdGVtLm91dC5wcmludGxuKCAiUmVzdWx0OiAiICsgbGRzICk7IC8vIERvIHdoYXQgeW91IHdhbnQgd2l0aCBgTG9jYWxEYXRlYCBvYmplY3RzIGNvbGxlY3Rpb24uCgp9IGVsc2UgaWYoIGlucHV0Lmxlbmd0aCgpID09IDEwICkgeyAgICAvLyBFeDogIjIyLzAxLzIwMTAiCiAgICBMb2NhbERhdGUgbGQgPSBMb2NhbERhdGUucGFyc2UoIGlucHV0ICwgZiApIDsKICAgIFN5c3RlbS5vdXQucHJpbnRsbiggIlJlc3VsdDogIiArIGxkICk7IC8vIERvIHdoYXQgeW91IHdhbnQgd2l0aCBgTG9jYWxEYXRlYCBvYmplY3QuCgp9IGVsc2UgaWYoIGlucHV0ID09IG51bGwgKSB7CiAgICBTeXN0ZW0ub3V0LnByaW50bG4oICJ4eHgiICk7IC8vIERlY2lkZSB3aGF0IHlvdSB3YW50IHRvIGRvIGZvciBudWxsIGlucHV0LgoKfSBlbHNlIHsKICAgIFN5c3RlbS5vdXQucHJpbnRsbiggIlVuZXhwZWN0ZWQgaW5wdXQ6ICIgKyBpbnB1dCApIDsKfQoKCX0KfQ==