Una String in Java è un oggetto che rappresenta testo immutabile come sequenza di caratteri Unicode (lettere, cifre, punteggiatura, ecc.).
Per definire un'istanza di String si usano le doppie virgolette:
String fruit = "Apple";
Le stringhe si manipolano chiamando i metodi della stringa.
Una volta che una stringa è stata costruita, il suo valore non può mai cambiare.
Qualsiasi metodo che sembri modificare una stringa in realtà restituisce una nuova stringa.
La classe String fornisce alcuni metodi statici per trasformare le stringhe.
In questo esercizio elaborerai delle righe di log.
Ogni riga di log è una stringa formattata così: "[<LEVEL>]: <MESSAGE>".
Ci sono tre livelli di log diversi:
INFOWARNINGERRORHai tre compiti, ognuno dei quali riceve una riga di log e ti chiede di farci qualcosa.
Implementa il metodo (static) LogLevels.message() per restituire il messaggio di una riga di log:
LogLevels.message("[ERROR]: Invalid operation")
// => "Invalid operation"
Gli spazi bianchi all'inizio o alla fine vanno rimossi:
LogLevels.message("[WARNING]: Disk almost full\r\n")
// => "Disk almost full"
Implementa il metodo (static) LogLevels.logLevel() per restituire il livello di log di una riga di log, che va restituito in minuscolo:
LogLevels.logLevel("[ERROR]: Invalid operation")
// => "error"
Implementa il metodo (static) LogLevels.reformat() che riformatta la riga di log, mettendo prima il messaggio e poi il livello di log tra parentesi:
LogLevels.reformat("[INFO]: Operation completed")
// => "Operation completed (info)"
Iscriviti a Exercism per imparare e padroneggiare Java con 27 concetti159 esercizi e il mentoring di persone reali, tutto gratis.