Как создать метод, который проверяет, не смешивается ли число с 1 нечетной цифрой, а другая четная цифра

#java

Вопрос:

я новичок в java, и я создал метод, который проверяет, имеет ли число следующие цифры, что 1 является нечетным или четным, а следующая цифра противоположна. например, если число равно 12121, метод должен возвращать значение true;

вот код

 public static boolean isMix(int x)
{
    String s = Integer.toString(x);
    int counter = 0;

    for (int i = 0, j = 1; i < s.length() || j < s.length(); i  , j  )
    {
        if (Integer.parseInt(""   s.charAt(i)) % 2 == 0amp;amp; Integer.parseInt(""   s.charAt(j)) % 2 == 1
                || (Integer.parseInt(""   s.charAt(i)) % 2 == 1 amp;amp; Integer.parseInt(""   s.charAt(j)) % 2 == 0))
            counter  ;
    System.out.println(counter);
    }
    if (s.length() == counter)
        return true;

    return false;
}
 

Ответ №1:

Вы можете просто вернуть false , если четность текущей цифры совпадает с предыдущей цифрой.

 public static boolean isMix(int x){
    String s = Integer.toString(x);
    for(int i = 1; i < s.length(); i  ){
        if(Character.getNumericValue(s.charAt(i)) % 2 
           == Character.getNumericValue(s.charAt(i - 1)) % 2) return false;
    }
    return true;
}