Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.programmer > #32900
| From | Martin Gregorie <martin@address-in-sig.invalid> |
|---|---|
| Newsgroups | comp.lang.java.programmer |
| Subject | Re: Way to avoid repeating to catch the same exception in overridden method |
| Date | 2015-10-19 12:26 +0000 |
| Organization | A noiseless patient Spider |
| Message-ID | <n02nih$brt$1@dont-email.me> (permalink) |
| References | <fd943245-c84e-4b93-9ed5-e18fb25e256a@googlegroups.com> |
On Mon, 19 Oct 2015 01:02:07 -0700, mike wrote:
> Hi,
>
>
> We have the current implementation in our overridden toString() method:
>
> public String toString() {
> return "firstName=" + res.getFirstName() + "{" +
> "lastName=" + res.getLastName() + ", " +
> "address=" + res.getAddress() + "/" + "***" + ", " +
> "zipCode=" + resource.getZipCode() + "}";
> }
>
>
>
> Each get can throw an IllegalArgumentExcepion so we need to replace the
> value with an empty String if it happens( to avoid that our user in this
> case should see an IllegalArgumentException ).
>
> My question is if there is a more efficient way to override toString()
> than:
>
I'd probably use a StringBuilder:
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("firstName=");
sb.append((res.getFirstName() == null ? "" : res.getFirstName());
sb.append("{lastName=");
sb.append((res.getLastName() == null ? "" : res.getLastName()));
sb.append(", address=");
sb.append((res.getAddress() == null ? "" : res.getAddress());
sb.append("/***, zipCode="));
sb.append((resource.getZipCode() == null ? "" : resource.getZipCode());
sb.append("}")
return sb.toString();
}
or a String.format() method:
public String toString() {
String s =
s.format("firstName=%s{lastName=%s, address="%s/***, zipCode=%s}",
(res.getFirstName() == null ? "" : res.getFirstName(),
(res.getLastName() == null ? "" : res.getLastName(),
(res.getAddress() == null ? "" : res.getAddress(),
(resource.getZipCode() == null ? "" : resource.getZipCode());
return s;
}
both using the conditional operator to avoid try..catch constructs.
These may not be more efficient, but are certainly easier to read and
more concise, particularly the String.format() statement.
--
martin@ | Martin Gregorie
gregorie. | Essex, UK
org |
Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Way to avoid repeating to catch the same exception in overridden method mike <mikaelpetterson@hotmail.com> - 2015-10-19 01:02 -0700
Re: Way to avoid repeating to catch the same exception in overridden method Eric Sosman <esosman@comcast-dot-net.invalid> - 2015-10-19 12:11 -0400
Re: Way to avoid repeating to catch the same exception in overridden method Robert Klemme <shortcutter@googlemail.com> - 2015-10-23 08:59 +0200
Re: Way to avoid repeating to catch the same exception in overridden method Martin Gregorie <martin@address-in-sig.invalid> - 2015-10-19 12:26 +0000
Re: Way to avoid repeating to catch the same exception in overridden method Silvio <silvio@internet.com> - 2015-10-23 11:00 +0200
Re: Way to avoid repeating to catch the same exception in overridden method Martin Gregorie <martin@address-in-sig.invalid> - 2015-10-23 10:32 +0000
csiph-web