java为何重复调用方法,这是在Java中重复方法调用的最干净的方法吗?

The following looks like messy code, but I can't think how to make it neater. Any ideas? I want to call doSearch for values of 10, 20 and 30. If no results are returned for a value, then I want to try for the following value. Otherwise, just exit out. I know this would work, but is it the most readable way?

SearchResult result = doSearch("10");

if (result.getResults() == null) {

result = doSearch("20");

if (result.getResults() == null) {

result = doSearch("30");

if (result.getResults() == null) {

// put code to deal with lack of results here

}

}

}

解决方案

Here's a suggestion:

SearchResult result = null;

for (String attempt : "10,20,30".split(","))

if ((result = doSearch(attempt)) != null)

break;

if (result == null) {

// put code to deal with lack of results here

}

(as suggested by Marko Topolnik in the comments.)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值