Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- OUTPUT:
- ==== using isNullOrEmpty ====
- Convict: Joe Jacobs
- Alises : [Joey, Nails]
- Crimes : [Major, Minor]
- Convict: Moe Mandy
- Alises : No known alises
- Crimes : [Major]
- Convict: Unknown
- Alises : [Larry]
- Crimes : [Minor]
- ==== using getDefaultIfNull ====
- Convict: Joe Jacobs
- Alises : [Joey, Nails]
- Crimes : [Major, Minor]
- Convict: Moe Mandy
- Alises : No known alises
- Crimes : [Major]
- Convict: Unknown
- Alises : [Larry]
- Crimes : [Minor]
- CODE:
- package deleteme;
- import java.util.Arrays;
- import java.util.Collection;
- import java.util.List;
- public class DeleteMe {
- public static void main(String[] args) {
- showExample();
- }
- private static class Crime {
- private String name;
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- @Override
- public String toString() {
- return getName();
- }
- }
- private static class Convict {
- private String name;
- private List<String> alises;
- private List<Crime> crimes;
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- public List<String> getAlises() {
- return alises;
- }
- public void setAlises(List<String> alises) {
- this.alises = alises;
- }
- public List<Crime> getCrimes() {
- return crimes;
- }
- public void setCrimes(List<Crime> crimes) {
- this.crimes = crimes;
- }
- }
- public static void showExample() {
- Crime minor = new Crime();
- minor.setName("Minor");
- Crime major = new Crime();
- major.setName("Major");
- Convict joe = new Convict();
- joe.setName("Joe Jacobs");
- joe.setAlises(Arrays.asList(new String[]{"Joey", "Nails"}));
- joe.setCrimes(Arrays.asList(new Crime[]{major, minor}));
- Convict moe = new Convict();
- moe.setName("Moe Mandy");
- moe.setCrimes(Arrays.asList(new Crime[]{major}));
- Convict larry = new Convict();
- larry.setAlises(Arrays.asList(new String[]{"Larry"}));
- larry.setCrimes(Arrays.asList(new Crime[]{minor}));
- List<Convict> convicts = Arrays.asList(new Convict[]{joe, moe, larry});
- //using only the isNullOrEmpty
- System.out.println("==== using isNullOrEmpty ====");
- for (Convict convict : convicts) {
- System.out.printf("Convict: %s%n", isNullOrEmpty(convict.getName()) ? "Unknown" : convict.getName());
- System.out.printf("Alises : %s%n", isNullOrEmpty(convict.getAlises()) ? "No known alises" : convict.getAlises());
- System.out.printf("Crimes : %s%n%n", isNullOrEmpty(convict.getCrimes()) ? "No known crimes" : convict.getCrimes());
- }
- //using the conveninece method for get default if null
- System.out.println("==== using getDefaultIfNull ====");
- for (Convict convict : convicts) {
- System.out.printf("Convict: %s%n", getDefaultIfNull(convict.getName(), "Unknown"));
- System.out.printf("Alises : %s%n", getDefaultIfNull(convict.getAlises(), "No known alises"));
- System.out.printf("Crimes : %s%n%n", getDefaultIfNull(convict.getCrimes(), "No known crimes"));
- }
- }
- public static Object getDefaultIfNull(Object o, Object ifNullUseThis) {
- return (isNullOrEmpty(o) ? ifNullUseThis : o);
- }
- public static boolean isNullOrEmpty(Object o) {
- boolean isNullOrEmpty = true;
- if (o != null) {
- if (String.class.isAssignableFrom(o.getClass())) {
- isNullOrEmpty = ((String) o).isEmpty();
- } else if (Collection.class.isAssignableFrom(o.getClass())) {
- isNullOrEmpty = ((Collection) o).isEmpty();
- } else if (o.getClass().isArray()) {
- isNullOrEmpty = (((Object[]) o).length == 0);
- } else {
- isNullOrEmpty = String.valueOf(o).isEmpty();
- }
- }
- return isNullOrEmpty;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment