Значение слова содержит в java/Android

#java #android

Вопрос:

Сначала отправил 0 в lit1 и 300 в lit2, результат был замечен 0/300 огней
, затем отправил 200 в lit1, и результат был замечен 200/300 огней
, затем отправил 0 в lit2, и результат был замечен 200/0 огней.

Перезапуск (лит1 200 и лит2 300), изменение лит1 на 20, и результат был замечен 20/300 огней
, затем изменение лит1 на 200 и лит2 на 30, результат был замечен 200/30 огней

Перезапуск (лит1 200 и лит2 300), изменил лит1 на 0, в результате было обнаружено 200/300 огней

Я пробовал так много раз и выяснял, что каждый раз, когда a > 0 и b >> 0, затем отправляет lit1 с 0,>>
он не может передать условие «!spot.toString().содержит(a «/» b)».

Код:

 static SpannableString spot;
static ForegroundColorSpan y;

public class Span {
    static SpannableString SPOT(int lit1, int lit2){
        String a = Integer.toString(lit1), b = Integer.toString(lit2);
        if(spot==null|| !spot.toString().contains(a "/" b)){
            y = new ForegroundColorSpan(Color.YELLOW);
            spot = new SpannableString("Spotted " d "/" b " lights");
            spot.setSpan(y, 7, 7 d.length() b.length(), Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
        }
        return spot;
    }
}
 

Действительно нужна помощь, потому что я использую много методов SpannableString.

Ответ №1:

200, 300 и 20 все заканчиваются на «0».

Редактировать:

Может быть, я недостаточно ясно выражаюсь. «0/300» находится внутри «200/300».

Комментарии:

1. Я пробовал отправлять лит1 123 и лит2 456, и при отправке лит1 с 0 это действительно работает. Но я все еще не понимаю, как оба заканчиваются на «0», потому что «содержит» означает все в a «/» b, верно? Или нет? Очень признателен за объяснение, поэтому я знаю, как сделать правильный код.

2. «собака» полностью содержится внутри «абадогабы». таким образом, «абадогаба».содержит(«собака»), вернет истину. Аналогично «0/300» полностью содержится внутри «200/300».

3. @ D. Купра я вижу.. омг, существует так много методов, использующих contains, которые так сильно отличаются от того, о чем я думал. О, мой бог… Большое вам спасибо за объяснение, сэр.

4. 1 вещь все еще отсутствует.. Почему это может быть 200/0 от 200/300..? Лол!

5. Я не знаю, но это не будет вызвано поведением spannablestring. И, вероятно, это не имеет особого отношения к сдерживанию строк, потому что это определяет, меняете ли вы место, а не то, на что вы его меняете. Поэтому, даже если вам кажется, что вы получили правильный заказ, наиболее вероятным местом для поиска является то, что вы переключили лит1 и лит2.