Чтобы инактивировать стили, не связанные с рабочим столом, вам просто нужно изменить 4 строки кода в файле variables.less. Задайте контрольные точки ширины экрана в файле variables.less следующим образом:
// Media queries breakpoints // -------------------------------------------------- // Extra small screen / phone // Note: Deprecated @screen-xs and @screen-phone as of v3.0.1 @screen-xs: 1px; @screen-xs-min: @screen-xs; @screen-phone: @screen-xs-min; // Small screen / tablet // Note: Deprecated @screen-sm and @screen-tablet as of v3.0.1 @screen-sm: 2px; @screen-sm-min: @screen-sm; @screen-tablet: @screen-sm-min; // Medium screen / desktop // Note: Deprecated @screen-md and @screen-desktop as of v3.0.1 @screen-md: 3px; @screen-md-min: @screen-md; @screen-desktop: @screen-md-min; // Large screen / wide desktop // Note: Deprecated @screen-lg and @screen-lg-desktop as of v3.0.1 @screen-lg: 9999px; @screen-lg-min: @screen-lg; @screen-lg-desktop: @screen-lg-min;
Это устанавливает минимальную ширину в запросе медиа-контента рабочего стола ниже, чтобы она применима ко всем ширинам экрана. Благодаря 2calledchaos для улучшения! Некоторые базовые стили определяются в мобильных стилях, поэтому мы должны обязательно их включать.
Изменить: chris отмечает, что вы можете установить эти переменные в онлайн-компиляторе на сайте начальной загрузки
То, что вы можете сделать, чтобы избежать многих других утверждений, это создать некоторую абстракцию валидации.
interface Validator<A, B> {
boolean validate(A receivedObject, B existingObject);
}
Затем для каждого if
создайте новую реализацию Validator
.
class NameValidator implements Validator<Expeceted, Received> {
@Override
public boolean validate(Expeceted receivedObject, Received existingObject) {
return existingObject.getName().equals(receivedObject.getName());
}
}
class LocationValidator implements Validator<Expeceted, Received> {
@Override
public boolean validate(Expeceted receivedObject, Received existingObject) {
return existingObject.getLocation().equals(receivedObject.getLocation());
}
}
Вы можете создать список таких валидаторов
List<Validator<Expeceted, Received>> validators = Arrays.asList(
new NameValidator(),
new LocationValidator()
);
И, наконец, ваш метод сравнения может просто перебрать все валидаторы.
public boolean compareObjects(Received recievedObject, Expeceted expecetedObject) {
for (Validator<Expeceted, Received> validation : validators) {
if (! validation.validate(expecetedObject, recievedObject)) {
return false;
}
}
return true;
}
Таким образом, вы можете позже просто добавить новые валидаторы и оставить метод сравнения без изменений.
определить метод, аналогичный «равному» для вашего класса, и в конечной точке проверить существующий_объект.check (receiveObject), добавить импорт java.util.Objects в ваш класс
public boolean check(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
RecievedObject receivedObject=(RecievedObject) o;
//add based on the logic you want
return Objects.equals(location, receivedObject.location) &&
Objects.equals(name, receivedObject.name);
}