1
resposta

fiz dessa forma, achei que ficou muito arredondado, se seria o jeito certo

package br.com.screenmath.william.encapsulamento.bateria;

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

public class Bateria {
    private int nivelBateria;
    LocalDateTime dataHora;
    public void setNivelBateria(int nivelBateria){
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd/MM/yyyy HH:mm");
        dataHora = LocalDateTime.now();
        System.out.println(dataHora.format(formatter));

        if(nivelBateria >= 0 && nivelBateria <= 100){
            this.nivelBateria = nivelBateria;
            System.out.print("Status: ");
            if(nivelBateria <= 20){
                System.out.println("Bateria fraca");

            } else if (nivelBateria < 80) {
                System.out.println("Bateria ok");

            }else {
                System.out.println("Bateria cheia");
            }

        }else {
            System.out.println("nivel de Bateria invalida");
        }
    }
}

Matricule-se agora e aproveite até 50% OFF

O maior desconto do ano para você evoluir com a maior escola de tecnologia

QUERO APROVEITAR
1 resposta

Oi, William! Como vai?

Gostei de como você estruturou o método setNivelBateria, aplicando encapsulamento e validação dos valores. A lógica está bem clara e a utilização de LocalDateTime para exibir a data e hora da verificação deixou o código mais completo.

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