Программирование на языке Ruby
Шрифт:
В этом фрагменте мы просто дописали путь в конец обычной строки
На практике методы
Метод
Как видите, разумное определение этих методов в собственном классе может несколько повысить гибкость применения. Но что сказать об идентификации объектов, переданных методам вашего класса?
Предположим, например, что вы написали метод, который ожидает в качестве параметра объект
Решить эту проблему просто. Если вы ожидаете на входе строку, проверьте, имеет ли объект метод
Ну а если объект не отвечает на вызов метода
Короткий путь к цели выглядит так:
Он опирается на тот факт, что при отсутствии реализации метода
С помощью неявного преобразования можно было бы сделать строки и числа практически эквивалентными:
Но я не рекомендую так поступать: «много хорошо тоже нехорошо». В Ruby, как и в большинстве языков, строки и числа — разные сущности. Мне кажется, что ясности ради преобразования, как правило, должны быть явными.
И еще: в методе
2.17. Дописывание в конец строки
Для конкатенации строк применяется оператор
Если число типа
2.18. Удаление хвостовых символов новой строки и прочих
Часто бывает необходимо удалить лишние символы в конце строки. Типичный пример — удаление символа новой строки после чтения строки из внешнего источника.
Метод
Обратите внимание, что при вызове варианта
Важно еще отметить, что последний символ удаляется, даже если это не символ новой строки:
Арестант
7. Бандитский Петербург
Детективы:
боевики
рейтинг книги
Новик
2. Помещик
Фантастика:
альтернативная история
рейтинг книги
Я Гордый Часть 3
3. Стальные яйца
Фантастика:
фэнтези
попаданцы
аниме
рейтинг книги
Огненный князь
1. Багряный восход
Фантастика:
фэнтези
попаданцы
аниме
рейтинг книги
Кодекс Охотника. Книга XIV
14. Кодекс Охотника
Фантастика:
боевая фантастика
попаданцы
аниме
рейтинг книги
Черная метка
7. Гибрид
Фантастика:
технофэнтези
аниме
фэнтези
попаданцы
рейтинг книги
Эволюционер из трущоб. Том 7
7. Эволюционер из трущоб
Фантастика:
попаданцы
аниме
фэнтези
фантастика: прочее
рейтинг книги
Древесный маг Орловского княжества 4
4. Орловское княжество
Фантастика:
аниме
фэнтези
попаданцы
рейтинг книги
Воин-Врач
1. Воин-Врач
Фантастика:
попаданцы
альтернативная история
историческое фэнтези
рейтинг книги
Вперед в прошлое 8
8. Вперед в прошлое
Фантастика:
попаданцы
альтернативная история
рейтинг книги
Вернуть невесту. Ловушка для попаданки
1. Вернуть невесту
Любовные романы:
любовно-фантастические романы
рейтинг книги
Офицер Красной Армии
2. Командир Красной Армии
Фантастика:
попаданцы
рейтинг книги