【发布时间】:2014-11-24 15:09:06
【问题描述】:
所以我有一个带有两种情况的开关,里面的东西 90% 相似所以我的问题是,我怎样才能以不同的方式编写它并保存一些代码,我几乎被困在这个问题上,开关工作但我当然还有另一种方式,更优化。
我会深入解释。
我有以下两种情况的开关盒。
switch (tipretea) {
case "red":
break;
case "green":
break;
}
tipretea 是来自本地数据库的列,“red”、“green”是该列的值。 在案例内部,我调用了一个方法,将标记放在地图上,红色标记用于“红色”案例,绿色标记用于“绿色”案例。
方法如下:
markeradd(id, bmp, pozastring, adresa, denumire, tipretea, latitude + "", longitude + "", latlng, BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_GREEN));
只更改最后一个参数。
BitmapDescriptorFactory.HUE_GREEN)
绿色。
BitmapDescriptorFactory.HUE_RED)
红色。
如果你问我,代码是相当大的,所以我问你一个更好的方法来写下来,下面是完整的开关代码。
switch (tipretea) {
case "red":
markeradd(id, bmp, pozastring, adresa, denumire, tipretea, latitude + "", longitude + "", latlng, BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_RED));
break;
case "green":
markeradd(id, bmp, pozastring, adresa, denumire, tipretea, latitude + "", longitude + "", latlng, BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_GREEN));
break;
}
【问题讨论】:
-
将案例结果存储在本地值中,例如 myHue= BitmapDescriptorFactory.HUE_RED;和 myHue=BitmapDescriptorFactory.HUE_GREEN;然后只需使用该结果调用您的 markeradd 方法
标签: java android performance google-maps optimization