- # r03strings.rb
- =begin
- Ruby Strings
- В Ruby строки изменяющиеся
- =end
- # Можно использовать " или ' для Строк, но ' более предпочтительны
- puts "Hello World"
- puts 'Hello World'
- # Конкатенация (присоединение) строк
- puts 'I like' + ' Ruby'
- # Escape-последовательность
- puts 'It\'s my Ruby'
- # Здесь новое, выводит строку три раза
- puts 'Hello' * 3
- # Определяет константу
- # Более подробно о константах позже, здесь:
- # поставить ссылку на ruby_names.html
- PI = 3.1416
- puts PI
a. Если puts передает объект, это не строка, puts вызывает метод to_s этого объекта и выводит строку, возвращенную этим методом.
b. В Ruby строки изменяемы. Они могут растягиваться, сколько потребуется, без больших затрат по времени и памяти. Ruby сохраняет строку как последовательность символов.
b. В Ruby строки изменяемы. Они могут растягиваться, сколько потребуется, без больших затрат по времени и памяти. Ruby сохраняет строку как последовательность символов.
Очень важно знать, что существует специальный вид строки, в которой используются обратные кавычки (`) или гравис, как начало или конец разделения. Например:
puts `dir`
Командная строка вывода посылается ОСи как команда к исполнению (под виндой мы посылаем команду dir), после чего вывод команды (dir в командном окне отобразит все файлы и поддиректории в вашей папке) затем отображается puts.
На Linux и Mac вместо этого можно сделать следующее:
puts `ls`
Другой способ породить(?) отдельный процесс - это использовать системный метод Ядра(?). Метод выполняет данную ему команду в подпроцессе; он возвращает значение true, если команда была найдена и исполнена правильно. Он возвращает значение false, если команда вышла с ненулевым статусом выхода (шо за хрень?), и nil, если команда не смогла выполниться.
Помните, что вывод команды будет просто идти в том же направлении, что и вывод вашей программы.
system("tar xzf test.tgz") # => true
Комментариев нет:
Отправить комментарий