Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Resolução

/*
     Carlos trabalha em uma empresa de logística que opera apenas de segunda a sexta,
     sem atividades nos finais de semana. Para evitar confusões, ele precisa de um programa que,
     ao receber um dia da semana, informe se é um dia útil ou não.

    Crie um programa que receba um dia da semana (em letras minúsculas) e exiba uma mensagem
    indicando se é um dia útil ou não.
 */

package com.github.lucasdevrj.condicionais;

import java.util.Scanner;

public class VerificacaoDeDiaUtil {
    public static void main(String[] args) {
        String diaDaSemana = "";

        Scanner entrada = new Scanner(System.in);

        System.out.print("Digite o dia da semana: ");
        diaDaSemana = entrada.next();

        entrada.close();

        diaDaSemana = diaDaSemana.toLowerCase();

        if (diaDaSemana.contains("segunda") || diaDaSemana.contains("terça") || diaDaSemana.contains("quarta")
                || diaDaSemana.contains("quinta") || diaDaSemana.contains("sexta")) {
            diaDaSemana = diaDaSemana.substring(0, 1).toUpperCase() + diaDaSemana.substring(1);
            System.out.printf("%s é um dia útil.", diaDaSemana);
        } else if (diaDaSemana.contains("sábado") || diaDaSemana.contains("domingo")) {
            diaDaSemana = diaDaSemana.substring(0, 1).toUpperCase() + diaDaSemana.substring(1);
            System.out.printf("%s não é um dia útil.", diaDaSemana);
        } else {
            System.out.println("Digite um dia da semana, exemplo: segunda-feira ou só segunda.");
        }
    }
}

Insira aqui a descrição dessa imagem para ajudar na acessibilidade
Beleza?

1 resposta
solução!

Oi, Lucas!

Meus parabéns por finalizar esse desafio de verificação de dia útil. É muito bom ver como você foi além do solicitado, tratando a entrada do usuário para garantir que o programa seja mais resiliente a erros.

Sua solução demonstra um cuidado especial com a experiência do usuário. Ao utilizar o método .toLowerCase() e tratar a capitalização da primeira letra no momento da saída com .substring(), você garante que, independentemente de como o usuário digite, a resposta final seja visualmente elegante e padronizada.

E, a verificação específica para sábado e domingo, somada ao tratamento de entradas inválidas no else, deixa seu código muito mais completo.

Se você quiser capturar a linha toda de uma vez, o .nextLine() costuma ser o mais indicado. E, você pode conferir mais sobre manipulação de textos na documentação oficial sobre a classe String em Java.

Conseguiu perceber como a lógica de tratar os dados logo na entrada (toLowerCase) simplifica todas as comparações que você precisou fazer depois?

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!