Позвольте мне объяснить вам, чего я на самом деле пытаюсь достичь.
У меня есть список парковок различного типа в зависимости от улицы.Предположим, у меня есть одно название улицы, то есть abc, и эта улица может содержать комбинацию ниже
типа парковки (для пожилых людей, инвалидов, мотоциклистов, грузовиков, зафрахтованных, обычных)
ив зависимости от типа парковки, мне нужно показать другой маркер на карте.
Что я пробовал: Я пытался использовать его для создания комбинации всех типов парковки, то есть 6! = 720, еслия иду с этим мне нужно сделать 720 тестовых случаев и становится слишком длинным
Ответ от firebase: ключ parking_space содержит список различных типов парковки
Этот метод будет вызывать получение данных из базы и итератора через все типы парковок, доступных на этой улице, и устанавливать тип true and vice versa
private ArrayList<ParkingTypePojo> parkingTypeListPojo = new ArrayList<>();
private ParkingTypePojo parkingTypePojo;
private void evaluateMarkerType(ArrayList<Map<String, Object>> pack) {
boolean elderlyStatus = false;
boolean disabledStatus = false;
boolean cyclistStatus = false;
boolean motorcyclistStatus = false;
boolean truckStatus = false;
boolean charteredStatus = false;
boolean conventionalStatus = false;
for (int i = 0; i < pack.size(); i++) {
switch (pack.get(i).get(Constants.PARKING_TYPE).toString()) {
case "Elderly"://normal green
//1
elderlyStatus = true;
break;
case "Disabled"://senior disable blue
//2
disabledStatus = true;
break;
case "Cyclist"://cycle orange
//3
cyclistStatus = true;
break;
case "Motorcyclist"://moto prpl
//4
motorcyclistStatus = true;
break;
case "Truck"://truck yllw
//5
truckStatus = false;
break;
case "Chartered"://cet black
//6
charteredStatus = true;
break;
case "Conventional"://zona blue money
//7
conventionalStatus = true;
break;
default:
break;
}
}
parkingTypePojo = new ParkingTypePojo(elderlyStatus, disabledStatus, cyclistStatus, motorcyclistStatus, truckStatus, charteredStatus, conventionalStatus);
parkingTypeListPojo.add(parkingTypePojo);
}
Iсохранен тип парковки на основе улицы в классе pojo
public class ParkingTypePojo {
private boolean elderlyStatus;
private boolean disabledStatus;
private boolean cyclistStatus;
private boolean motorcyclistStatus;
private boolean truckStatus;
private boolean charteredStatus;
private boolean conventionalStatus;
public ParkingTypePojo(boolean elderlyStatus, boolean disabledStatus, boolean cyclistStatus, boolean motorcyclistStatus, boolean truckStatus, boolean charteredStatus, boolean conventionalStatus) {
this.elderlyStatus = elderlyStatus;
this.disabledStatus = disabledStatus;
this.cyclistStatus = cyclistStatus;
this.motorcyclistStatus = motorcyclistStatus;
this.truckStatus = truckStatus;
this.charteredStatus = charteredStatus;
this.conventionalStatus = conventionalStatus;
}
public boolean isElderlyStatus() {
return elderlyStatus;
}
public boolean isDisabledStatus() {
return disabledStatus;
}
public boolean isCyclistStatus() {
return cyclistStatus;
}
public boolean isMotorcyclistStatus() {
return motorcyclistStatus;
}
public boolean isTruckStatus() {
return truckStatus;
}
public boolean isCharteredStatus() {
return charteredStatus;
}
public boolean isConventionalStatus() {
return conventionalStatus;
}
}
Пожалуйста, предложите любой альтернативный способ решения этой проблемы, кроме комбинаций.Спасибо