public class Country {
public Country( ) { }
this .name = name;
this .countryCode = countryCode;
this .isdCode = isdCode;
}
return this .name ;
}
public String getCountryCode
( ) { return this .countryCode ;
}
return this .isdCode ;
}
public void setName
( String name
) { this .name = name;
}
public void setCountryCode
( String countryCode
) { this .countryCode = countryCode;
}
public void setIsdCode
( String isdCode
) { this .isdCode = isdCode;
}
return this .getClass ( ) .getName ( ) + "{name=" + this .name + ", countryCode=" + this .countryCode + ", isdCode=" + this .isdCode + "}" ;
}
}
//
//
//
//
public class CountryBO {
Country createCountry
( String data
) { String [ ] data1
= data.
split ( "," ) ; Country country= new Country( ) ;
country.setName ( data1[ 0 ] ) ;
country.setCountryCode ( data1[ 1 ] ) ;
country.setIsdCode ( data1[ 2 ] ) ;
return country;
}
void displaySpecificCountryDetails
( Country
[ ] countryList,
String countryName,
int countryCount
) { int i= 0 ,set= 0 ;
for ( i= 0 ; i< countryCount; i++ ) {
if ( countryName.equals ( countryList[ i] .getName ( ) ) ) {
set= 1 ;
System .
out .
println ( countryList
[ i
] .
toString ( ) ) ; break ;
}
}
if ( set!= 1 ) {
System .
out .
println ( "Country by name " + countryName
+ " is not found" ) ; }
}
void displayAllCountryDetails( Country[ ] countryList, int countryCount) {
int i;
for ( i= 0 ; i< countryCount; i++ ) {
System .
out .
println ( countryList
[ i
] .
toString ( ) ) ; }
}
void displayAllCountryNameAndIsdCode( Country[ ] countryList, int countryCount) {
for ( int i= 0 ; i< countryCount; i++ ) {
System .
out .
println ( "{name=" + countryList
[ i
] .
getName ( ) + ", isdCode=" + countryList
[ i
] .
getCountryCode ( ) + "}" ) ; }
}
void updateIsdCodeOfSpecificCountry
( Country
[ ] countryList,
String countryName,
String isdCode,
int countryCount
) { int i,set= 0 ;
for ( i= 0 ; i< countryCount; i++ ) {
if ( countryName.equals ( countryList[ i] .getName ( ) ) ) {
countryList[ i] .setIsdCode ( isdCode) ;
break ;
}
}
for ( i= 0 ; i< countryCount; i++ ) {
System .
out .
println ( countryList
[ i
] .
toString ( ) ) ; }
}
}
//
//
//
//
import java.util.Scanner ;
public class Main {
public static void main
( String [ ] args
) { // TODO Auto-generated method stub
Scanner s
= new Scanner
( System .
in ) ; int ch;
Country country[ ] = new Country[ 10 ] ;
CountryBO countryBo= new CountryBO( ) ;
int i= 0 ;
System .
out .
println ( "Menu:\n Type any number between 1 and 6" ) ; System .
out .
println ( "1)Create a new country\n 2)Display details of a specific country\n 3)Display the details of all countries\n 4)Display the ISD codes of all countries" ) ; System .
out .
println ( "5)Update ISD code of a specific country\n 6)Exit" ) ; do {
System .
out .
println ( "Enter your choice" ) ; ch= s.nextInt ( ) ;
s.nextLine ( ) ;
switch ( ch) {
case 1 : System .
out .
println ( "Enter Country Details" ) ; str= s.nextLine ( ) ;
country[ i] = countryBo.createCountry ( str) ;
i++;
break ;
case 2 : System .
out .
println ( "Enter the name of the country to be searched" ) ; countryName= s.nextLine ( ) ;
countryBo.displaySpecificCountryDetails ( country, countryName, i) ;
break ;
case 3 : System .
out .
println ( "Details of all countries" ) ; countryBo.displayAllCountryDetails ( country, i) ;
break ;
case 4 : System .
out .
println ( "ISD codes of all countries" ) ; countryBo.displayAllCountryNameAndIsdCode ( country, i) ;
break ;
case 5 : System .
out .
println ( "Enter the name of the country for which the isd code needs to be updated" ) ; countryName= s.nextLine ( ) ;
System .
out .
println ( "Enter the new ISD code" ) ; isdCode= s.nextLine ( ) ;
countryBo.updateIsdCodeOfSpecificCountry ( country, countryName, isdCode, i) ;
break ;
default : break ;
}
System .
out .
println ( "Do you want to continue? Type Yes / No" ) ; reply= s.nextLine ( ) ;
} while ( reply.equals ( "Yes" ) ) ;
}
}
//
//
//
//
CnB1YmxpYyBjbGFzcyBDb3VudHJ5IHsKCXByaXZhdGUgU3RyaW5nIG5hbWU7Cglwcml2YXRlIFN0cmluZyBjb3VudHJ5Q29kZTsKCXByaXZhdGUgU3RyaW5nIGlzZENvZGU7CglwdWJsaWMgQ291bnRyeSgpe30KCXB1YmxpYyBDb3VudHJ5KFN0cmluZyBuYW1lLFN0cmluZyBjb3VudHJ5Q29kZSxTdHJpbmcgaXNkQ29kZSl7CgkJdGhpcy5uYW1lPW5hbWU7CgkJdGhpcy5jb3VudHJ5Q29kZT1jb3VudHJ5Q29kZTsKCQl0aGlzLmlzZENvZGU9aXNkQ29kZTsKCX0KCXB1YmxpYyBTdHJpbmcgZ2V0TmFtZSgpewoJCXJldHVybiB0aGlzLm5hbWU7Cgl9CglwdWJsaWMgU3RyaW5nIGdldENvdW50cnlDb2RlKCl7CgkJcmV0dXJuIHRoaXMuY291bnRyeUNvZGU7Cgl9CglwdWJsaWMgU3RyaW5nIGdldElzZENvZGUoKXsKCQlyZXR1cm4gdGhpcy5pc2RDb2RlOwoJfQoJcHVibGljIHZvaWQgc2V0TmFtZShTdHJpbmcgbmFtZSl7CgkJdGhpcy5uYW1lPW5hbWU7Cgl9CglwdWJsaWMgdm9pZCBzZXRDb3VudHJ5Q29kZShTdHJpbmcgY291bnRyeUNvZGUpewoJCXRoaXMuY291bnRyeUNvZGU9Y291bnRyeUNvZGU7Cgl9CglwdWJsaWMgdm9pZCBzZXRJc2RDb2RlKFN0cmluZyBpc2RDb2RlKXsKCQl0aGlzLmlzZENvZGU9aXNkQ29kZTsKCX0KCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKXsKCQlyZXR1cm4gdGhpcy5nZXRDbGFzcygpLmdldE5hbWUoKSsie25hbWU9Iit0aGlzLm5hbWUrIiwgY291bnRyeUNvZGU9Iit0aGlzLmNvdW50cnlDb2RlKyIsIGlzZENvZGU9Iit0aGlzLmlzZENvZGUrIn0iOwoJfQp9CgovLwovLwovLwovLwpwdWJsaWMgY2xhc3MgQ291bnRyeUJPIHsKCUNvdW50cnkgY3JlYXRlQ291bnRyeShTdHJpbmcgZGF0YSl7CgkJU3RyaW5nW10gZGF0YTE9ZGF0YS5zcGxpdCgiLCIpOwoJCUNvdW50cnkgY291bnRyeT1uZXcgQ291bnRyeSgpOwoJCWNvdW50cnkuc2V0TmFtZShkYXRhMVswXSk7CgkJY291bnRyeS5zZXRDb3VudHJ5Q29kZShkYXRhMVsxXSk7CgkJY291bnRyeS5zZXRJc2RDb2RlKGRhdGExWzJdKTsKCQlyZXR1cm4gY291bnRyeTsKCX0KCXZvaWQgZGlzcGxheVNwZWNpZmljQ291bnRyeURldGFpbHMoQ291bnRyeVtdIGNvdW50cnlMaXN0LCBTdHJpbmcgY291bnRyeU5hbWUsIGludCBjb3VudHJ5Q291bnQpewoJCWludCBpPTAsc2V0PTA7CgkJZm9yKGk9MDtpPGNvdW50cnlDb3VudDtpKyspewoJCQlpZihjb3VudHJ5TmFtZS5lcXVhbHMoY291bnRyeUxpc3RbaV0uZ2V0TmFtZSgpKSl7CgkJCQlzZXQ9MTsKCQkJCVN5c3RlbS5vdXQucHJpbnRsbihjb3VudHJ5TGlzdFtpXS50b1N0cmluZygpKTsKCQkJCWJyZWFrOwoJCQl9CgkJfQoJCWlmKHNldCE9MSl7CgkJCVN5c3RlbS5vdXQucHJpbnRsbigiQ291bnRyeSBieSBuYW1lICIrY291bnRyeU5hbWUrIiBpcyBub3QgZm91bmQiKTsKCQl9Cgl9Cgl2b2lkIGRpc3BsYXlBbGxDb3VudHJ5RGV0YWlscyhDb3VudHJ5W10gY291bnRyeUxpc3QsIGludCBjb3VudHJ5Q291bnQpewoJCWludCBpOwoJCWZvcihpPTA7aTxjb3VudHJ5Q291bnQ7aSsrKXsKCQkJU3lzdGVtLm91dC5wcmludGxuKGNvdW50cnlMaXN0W2ldLnRvU3RyaW5nKCkpOwoJCX0KCX0KCXZvaWQgZGlzcGxheUFsbENvdW50cnlOYW1lQW5kSXNkQ29kZShDb3VudHJ5W10gY291bnRyeUxpc3QsIGludCBjb3VudHJ5Q291bnQpewoJCWZvcihpbnQgaT0wO2k8Y291bnRyeUNvdW50O2krKyl7CgkJCVN5c3RlbS5vdXQucHJpbnRsbigie25hbWU9Iitjb3VudHJ5TGlzdFtpXS5nZXROYW1lKCkrIiwgaXNkQ29kZT0iK2NvdW50cnlMaXN0W2ldLmdldENvdW50cnlDb2RlKCkrIn0iKTsKCQl9Cgl9Cgl2b2lkIHVwZGF0ZUlzZENvZGVPZlNwZWNpZmljQ291bnRyeShDb3VudHJ5W10gY291bnRyeUxpc3QsIFN0cmluZyBjb3VudHJ5TmFtZSwgU3RyaW5nIGlzZENvZGUsIGludCBjb3VudHJ5Q291bnQpewoJCWludCBpLHNldD0wOwoJCWZvcihpPTA7aTxjb3VudHJ5Q291bnQ7aSsrKXsKCQkJaWYoY291bnRyeU5hbWUuZXF1YWxzKGNvdW50cnlMaXN0W2ldLmdldE5hbWUoKSkpewoJCQkJY291bnRyeUxpc3RbaV0uc2V0SXNkQ29kZShpc2RDb2RlKTsKCQkJCWJyZWFrOwoJCQl9CgkJfQoJCWZvcihpPTA7aTxjb3VudHJ5Q291bnQ7aSsrKXsKCQkJU3lzdGVtLm91dC5wcmludGxuKGNvdW50cnlMaXN0W2ldLnRvU3RyaW5nKCkpOwoJCX0KCX0KfQovLwovLwovLwovLwppbXBvcnQgamF2YS51dGlsLlNjYW5uZXI7CgpwdWJsaWMgY2xhc3MgTWFpbiB7CgoJcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgewoJCS8vIFRPRE8gQXV0by1nZW5lcmF0ZWQgbWV0aG9kIHN0dWIKCQlTY2FubmVyIHM9bmV3IFNjYW5uZXIoU3lzdGVtLmluKTsKCQlpbnQgY2g7CgkJU3RyaW5nIHN0cjsKCQlTdHJpbmcgY291bnRyeU5hbWU7CgkJU3RyaW5nIGlzZENvZGU7CgkJU3RyaW5nIHJlcGx5OwoJCUNvdW50cnkgY291bnRyeVtdPW5ldyBDb3VudHJ5WzEwXTsKCQlDb3VudHJ5Qk8gY291bnRyeUJvPW5ldyBDb3VudHJ5Qk8oKTsKCQlpbnQgaT0wOwoJCVN5c3RlbS5vdXQucHJpbnRsbigiTWVudTpcblR5cGUgYW55IG51bWJlciBiZXR3ZWVuIDEgYW5kIDYiKTsKCQlTeXN0ZW0ub3V0LnByaW50bG4oIjEpQ3JlYXRlIGEgbmV3IGNvdW50cnlcbjIpRGlzcGxheSBkZXRhaWxzIG9mIGEgc3BlY2lmaWMgY291bnRyeVxuMylEaXNwbGF5IHRoZSBkZXRhaWxzIG9mIGFsbCBjb3VudHJpZXNcbjQpRGlzcGxheSB0aGUgSVNEIGNvZGVzIG9mIGFsbCBjb3VudHJpZXMiKTsKCQlTeXN0ZW0ub3V0LnByaW50bG4oIjUpVXBkYXRlIElTRCBjb2RlIG9mIGEgc3BlY2lmaWMgY291bnRyeVxuNilFeGl0Iik7CgkJZG97CgkJCVN5c3RlbS5vdXQucHJpbnRsbigiRW50ZXIgeW91ciBjaG9pY2UiKTsKCQkJY2g9cy5uZXh0SW50KCk7CgkJCXMubmV4dExpbmUoKTsKCQkJc3dpdGNoKGNoKXsKCQkJCWNhc2UgMTogU3lzdGVtLm91dC5wcmludGxuKCJFbnRlciBDb3VudHJ5IERldGFpbHMiKTsKCQkJCQkJc3RyPXMubmV4dExpbmUoKTsKCQkJCQkJY291bnRyeVtpXT1jb3VudHJ5Qm8uY3JlYXRlQ291bnRyeShzdHIpOwoJCQkJCQlpKys7CgkJCQkJCWJyZWFrOwoJCQkJY2FzZSAyOiBTeXN0ZW0ub3V0LnByaW50bG4oIkVudGVyIHRoZSBuYW1lIG9mIHRoZSBjb3VudHJ5IHRvIGJlIHNlYXJjaGVkIik7CgkJCQkJCSBjb3VudHJ5TmFtZT1zLm5leHRMaW5lKCk7CgkJCQkJCWNvdW50cnlCby5kaXNwbGF5U3BlY2lmaWNDb3VudHJ5RGV0YWlscyhjb3VudHJ5LCBjb3VudHJ5TmFtZSwgaSk7CgkJCQkJCWJyZWFrOwoJCQkJY2FzZSAzOiBTeXN0ZW0ub3V0LnByaW50bG4oIkRldGFpbHMgb2YgYWxsIGNvdW50cmllcyIpOwoJCQkJCQljb3VudHJ5Qm8uZGlzcGxheUFsbENvdW50cnlEZXRhaWxzKGNvdW50cnksIGkpOwoJCQkJCQlicmVhazsKCQkJCWNhc2UgNDogU3lzdGVtLm91dC5wcmludGxuKCJJU0QgY29kZXMgb2YgYWxsIGNvdW50cmllcyIpOwoJCQkJCQljb3VudHJ5Qm8uZGlzcGxheUFsbENvdW50cnlOYW1lQW5kSXNkQ29kZShjb3VudHJ5LCBpKTsKCQkJCQkJYnJlYWs7CgkJCQljYXNlIDU6IFN5c3RlbS5vdXQucHJpbnRsbigiRW50ZXIgdGhlIG5hbWUgb2YgdGhlIGNvdW50cnkgZm9yIHdoaWNoIHRoZSBpc2QgY29kZSBuZWVkcyB0byBiZSB1cGRhdGVkIik7CgkJCQkJCWNvdW50cnlOYW1lPXMubmV4dExpbmUoKTsKCQkJCQkJU3lzdGVtLm91dC5wcmludGxuKCJFbnRlciB0aGUgbmV3IElTRCBjb2RlIik7CgkJCQkJCWlzZENvZGU9cy5uZXh0TGluZSgpOwoJCQkJCQljb3VudHJ5Qm8udXBkYXRlSXNkQ29kZU9mU3BlY2lmaWNDb3VudHJ5KGNvdW50cnksIGNvdW50cnlOYW1lLCBpc2RDb2RlLCBpKTsKCQkJCQkJYnJlYWs7CgkJCQlkZWZhdWx0OiBicmVhazsKCQkJfQoJCQlTeXN0ZW0ub3V0LnByaW50bG4oIkRvIHlvdSB3YW50IHRvIGNvbnRpbnVlPyBUeXBlIFllcyAvIE5vIik7CgkJCXJlcGx5PXMubmV4dExpbmUoKTsKCQl9d2hpbGUocmVwbHkuZXF1YWxzKCJZZXMiKSk7Cgl9Cgp9Ci8vCi8vCi8vCi8v