为了账号安全,请及时绑定邮箱和手机立即绑定

如何检查是否从未使用过for循环内的if语句?

如何检查是否从未使用过for循环内的if语句?

MMTTMM 2021-04-16 09:22:02
我创建了一个方法来检查用户位置是否靠近建筑物。因此,我创建了以下方法private void whereAreYou(final List<location> locations) {    loadingprogress.setVisibility(View.INVISIBLE);    for (int i = 0; i < this.cities.size(); i++) {        final location loc= locations.get(i);        Location loc1 = mLastLocation;        Location loc2 = new Location("");        loc2.setLatitude(loc.getLat());        loc2.setLongitude(loc.getLng());        float distanceInMeters = loc1.distanceTo(loc2);        int distanceInKm = (int) (distanceInMeters / 1000);        if (distanceInKm <= Integer.parseInt(currentclub.getRadius())) {            uploadInformationToUserProfile(loc.getName());        }    }}现在我必须检查一个值是否在if语句内,因为那必须调用另一个方法,但前提是所有值都不适合
查看完整描述

2 回答

?
一只斗牛犬

TA贡献1784条经验 获得超2个赞

您可以添加最初设置为false的标志,并在if语句操作代码内将标志设置为true。在该部分代码之后,将其打印到控制台。

然后遍历适当的测试用例,并检查其是否真实存在。


查看完整回答
反对 回复 2021-04-28
?
慕斯709654

TA贡献1840条经验 获得超5个赞

添加一个布尔标志。


private void whereAreYou(final List<location> locations) {

    loadingprogress.setVisibility(View.INVISIBLE);


    boolean locationMatchFound = false; //boolean flag


    for (int i = 0; i < this.cities.size(); i++) {

        final location loc= locations.get(i);

        Location loc1 = mLastLocation;

        Location loc2 = new Location("");

        loc2.setLatitude(loc.getLat());

        loc2.setLongitude(loc.getLng());


        float distanceInMeters = loc1.distanceTo(loc2);

        int distanceInKm = (int) (distanceInMeters / 1000);

        if (distanceInKm <= Integer.parseInt(currentclub.getRadius())) {

            locationMatchFound = true; //boolean flag set to true if location found


            uploadInformationToUserProfile(loc.getName());

        }

    }

    if (!locationMatchFound){

        //Call your other method.

    }

}


查看完整回答
反对 回复 2021-04-28
  • 2 回答
  • 0 关注
  • 197 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信