- # 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
Комментариев нет:
Отправить комментарий