Подскажите что не так ? много разных способов перепробовал, но тут положительные числа различает а отрицательные нет)
package com.javarush.task.jdk13.task04.task0427;
import java.io.BufferedReader;
import java.io.InputStreamReader;
/*
Строка - описание
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String snumber = reader.readLine();
int n = Integer.parseInt(snumber);
if ((n>-9 && n<0)||(n>0 && n<9)&&((n%2)==0)) {
System.out.println("четное однозначное число");
} else if ((n>-9 && n<0)||(n>0 && n<9)&&((n%2)==0)){
System.out.println("нечетное однозначное число");
} else if ((n>-99 && n<-10)||(n>10 && n<99)&&((n%2)==0)){
System.out.println("четное двузначное число");
} else if ((n>-99 && n<-10)||(n>10 && n<99)&&((n%1)==0)){
System.out.println("нечетное двузначное число");
} else if ((n>-999 && n<-100)||(n>100 && n<999)&&((n%2)==0)){
System.out.println("четное трехзначное число");
} else if ((n>-999 && n<-100)||(n>100 && n<999)&&((n%1)==0)){
System.out.println("нечетное трехзначное число");}
//напишите тут ваш код
}
}