- Implement the Printer class:
class Printer(val textFormattingStrategy: (String) -> String) {
fun printText(text: String) {
val processedText = textFormattingStrategy(text)
println(processedText)
}
}
- Add sample strategies:
val lowerCaseFormattingStrategy: (String) -> String = {
it.toLowerCase()
}
val upperCaseFormattingStrategy: (String) -> String = {
it.toUpperCase()
}