Дата публикации:

Реализация метода Write для структуры UpperWriter


Хочу себе такие же кнопки
e36afced

Содержимое статьи:

Введение: GoLang предоставляет средства для создания собственных типов, реализующих интерфейсы. Одним из распространённых является интерфейс io.Writer, который определяет метод Write, используемый для записи потока данных.
Задача: Создайте структуру UpperWriter, содержащую поле UpperString типа string, и реализуйте интерфейс io.Writer. Метод Write должен переводить передаваемые данные в верхний регистр и записывать их в поле UpperString. Если при записи возникли ошибки, метод должен их возвращать.
Решение:

package main
import (
"fmt"
"io"
)
// UpperWriter представляет собой тип, выполняющий роль буфера для вводимых данных в верхнем регистре.
type UpperWriter struct {
UpperString string
}
// Write записывает данные в UpperString в верхнем регистре.
func (w *UpperWriter) Write(p []byte) (n int, err error) {
w.UpperString += fmt.Sprintf("%s", p)
return len(p), nil
}
func main() {
// Создаём новый UpperWriter.
w := &UpperWriter{}
// Пишем данные в UpperWriter.
data := "Hello, world!"
w.Write([]byte(data))
// Получаем изменённую строку в верхнем регистре.
upperString := w.UpperString
fmt.Println(upperString) // Выведет: "HELLO, WORLD!"
}


АПТЕЧКА ДЛЯ СОБАКИ ПРОФЕССИОНАЛЬНАЯ
Автотехнологии отечественных компаний
Бесплатный курс Excel в логистике: подбор авто и учёт запасов
Бесплатный урок по нейросетям
Бесплатный виджет для сайта
Чат рулетка на английском
Чатрулетка: чат с случайным собеседником
Фототехника с автоматической фокусировкой
Гайд по созданию мемов без фотошопа: упрощенная версия
Генератор паролей с буквами и цифрами
Игрушки для развития координации движений
Инновационные методы использования бетона с низким уровнем углеродного следа в строительстве офисных
IP видеокамеры и оборудование
Как юмор комиксов влияет на детскую когнитивную развитие
Легковые и внедорожники от немецких производителей
Напитки чая и кофе
Оптимизация заголовков в GEO проекте
Полноэкранный дисплей времени
Политика конфиденциальности и пользовательское соглашение
Сервер для веб-проектов: Безопасность, Скорость, Изоляция
Смешные ситуации
Спорные выплаты, жалобы и риск по партнёркам 2026
VDSina для чайников: базовое понимание
Видеообмен в режиме онлайн
Всем ценителям футбола - игровой автомат Top Trumps World Football Stars.
Политика конфиденциальности
🎨 фон