Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.java.programmer > #37154
| Path | csiph.com!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail |
|---|---|
| From | Robert Klemme <shortcutter@googlemail.com> |
| Newsgroups | comp.lang.java.programmer |
| Subject | Re: Where to put the return |
| Date | Sun, 13 Aug 2017 00:27:15 +0200 |
| Lines | 50 |
| Message-ID | <ev9dm4Ff34aU1@mid.individual.net> (permalink) |
| References | <87zib6zeup.fsf@munus.decebal.nl> <omlidd$k9h$1@gioia.aioe.org> |
| Mime-Version | 1.0 |
| Content-Type | text/plain; charset=utf-8; format=flowed |
| Content-Transfer-Encoding | quoted-printable |
| X-Trace | individual.net rBS4IeuF/TFbYvsek2MX4wmxyim5jqUb3twfyNPqoK4TQusVk= |
| Cancel-Lock | sha1:W9B4u0i+tjaT9SDt2twLSkY8cdE= |
| User-Agent | Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 |
| In-Reply-To | <omlidd$k9h$1@gioia.aioe.org> |
| Content-Language | en-US |
| Xref | csiph.com comp.lang.java.programmer:37154 |
Show key headers only | View raw
On 12.08.2017 02:33, Arne Vajhøj wrote:
> I would go for:
>
> private static final String NO_VALUE = "";
> private static String getOldestUsed() {
> try (Statement stmt = sqlite3Conn.createStatement();
> ResultSet rsOldest = stmt.executeQuery(OLDEST_USED)) {
> if (rsOldest.next()) {
> return rsOldest.getString("used");
> } else {
> return NO_VALUE;
> }
> } catch (SQLException e) {
> giveError("Error in displayOldestUsed");
> e.printStackTrace();
> fatalError("");
> return NO_VALUE;
> }
> }
>
> But there are many acceptable ways of writing this.
Your approach has a few advantages though:
- The compiler will catch the case that you forget to include
an explicit return in the catch.
- For the reader the code for the regular case (i.e. without
exception) is in one place (in the try body) so it is easier
to digest.
Btw. I'd rather throw in catch than return a special value. That is
cleaner and does not break if the special value actually occurs in the
database.
And another remark: we do not see the SQL but in this case I would make
sure that OLDEST_USED actually returns exactly one column and access
that via index instead of name. IIRC this tends to be slightly quicker.
But it may be just an old habit of mine.
Kind regards
robert
--
remember.guy do |as, often| as.you_can - without end
http://blog.rubybestpractices.com/
Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Where to put the return Cecil Westerhof <Cecil@decebal.nl> - 2017-08-11 10:30 +0200
Re: Where to put the return Cecil Westerhof <Cecil@decebal.nl> - 2017-08-11 12:24 +0200
Re: Where to put the return Eric Douglas <e.d.programmer@gmail.com> - 2017-08-11 08:31 -0700
Re: Where to put the return Arne Vajhøj <arne@vajhoej.dk> - 2017-08-11 20:33 -0400
Re: Where to put the return Robert Klemme <shortcutter@googlemail.com> - 2017-08-13 00:27 +0200
Re: Where to put the return Arne Vajhøj <arne@vajhoej.dk> - 2017-08-12 21:41 -0400
Re: Where to put the return Robert Klemme <shortcutter@googlemail.com> - 2017-08-13 13:15 +0200
Re: Where to put the return Cecil Westerhof <Cecil@decebal.nl> - 2017-08-15 08:12 +0200
Re: Where to put the return Robert Klemme <shortcutter@googlemail.com> - 2017-08-19 11:10 +0200
Re: Where to put the return Cecil Westerhof <Cecil@decebal.nl> - 2017-08-19 12:54 +0200
Re: Where to put the return Cecil Westerhof <Cecil@decebal.nl> - 2017-08-19 13:46 +0200
Re: Where to put the return Cecil Westerhof <Cecil@decebal.nl> - 2017-08-19 14:10 +0200
Re: Where to put the return Robert Klemme <shortcutter@googlemail.com> - 2017-08-19 15:35 +0200
Re: Where to put the return Arne Vajhøj <arne@vajhoej.dk> - 2017-08-19 09:48 -0400
Re: Where to put the return Robert Klemme <shortcutter@googlemail.com> - 2017-08-19 23:26 +0200
Re: Where to put the return Arne Vajhøj <arne@vajhoej.dk> - 2017-08-19 20:01 -0400
Re: Where to put the return Robert Klemme <shortcutter@googlemail.com> - 2017-08-20 19:30 +0200
Re: Where to put the return Cecil Westerhof <Cecil@decebal.nl> - 2017-08-19 17:06 +0200
Re: Where to put the return Robert Klemme <shortcutter@googlemail.com> - 2017-08-19 15:35 +0200
Re: Where to put the return Arne Vajhøj <arne@vajhoej.dk> - 2017-08-19 09:43 -0400
Re: Where to put the return Cecil Westerhof <Cecil@decebal.nl> - 2017-08-19 17:15 +0200
Re: Where to put the return Robert Klemme <shortcutter@googlemail.com> - 2017-08-21 22:33 +0200
Re: Where to put the return lewbloch@gmail.com - 2017-08-19 09:20 -0700
Re: Where to put the return Robert Klemme <shortcutter@googlemail.com> - 2017-08-21 22:29 +0200
Re: Where to put the return Eric Douglas <e.d.programmer@gmail.com> - 2017-08-14 05:11 -0700
Re: Where to put the return Brixomatic <brixomatic@yahoo.com> - 2017-08-31 19:27 +0200
csiph-web