Nesse código de uma possível solução:
public class TesteIR2 {
    public static void main(String[] args) {
        // De 1900.0 até 2800.0 o IR é de 7.5% e pode deduzir R$ 142
        // De 2800.01 até 3751.0 o IR é de 15% e pode deduzir R$ 350
        // De 3751.01 até 4664.00 o IR é de 22.5% e pode deduzir R$ 636
        double salario = 3300.0;
        if(salario >= 1900.0 && salario <= 2800.0) {
            System.out.println("A sua aliquota é de 7%");
            System.out.println("Você pode deduzir até R$ 142");
        } else if(salario >= 2800.01 && salario <= 3751.0) {
            System.out.println("A sua aliquota é de 15%");
            System.out.println("Você pode deduzir até R$ 350");
        } else if(salario >= 3751.01 && salario <= 4664.0) {
            System.out.println("A sua aliquota é de 22.5%");
            System.out.println("Você pode deduzir até R$ 636");
        }
    }
}acho que há um erro. Se o salário for MENOR que 1900.0 ou MAIOR que 4664.0, ele não atende a nenhuma condição e o programa termina sem nenhuma informação ao usuário. Seria melhor começar com um if para esse caso (ou terminar, tanto faz)?
 
            