学生向けプログラミング入門

学生向けにプログラミングを解説。Java、C++、Ruby、PHP、データベース

Rubyプログラミング入門その20 StringBufferを用いたプログラム

<<前  [TOP]  次>>


StringBufferは、文字列に文字列を加えたりすることのできるメソッドです。
Rubyでの文字列連結は足し算するだけでいいです。

str = 'str1' + 'str2'



一般的には「<<」を使用した文字列連結が用いられます。

str = 'str1' << 'str2'

こちらの記述のほうが処理スピードが早いです。


メモ帳を開いて次のプログラムを作ってみましょう。


【buffertest1.rb】

class Buffertest1

	def add( sb )
		sb << '11'
	end
end

sb = '00'

b=Buffertest1.new()
b.add( sb )
puts sb



出力結果です。
f:id:MrRadiology:20180123103939p:plain


メモ帳を開いて次のプログラムを作ってみましょう。


【buffertest2.rb】

class Buffertest2

	sb = 'start'
	puts sb
	puts '大きさ:' + sb.length().to_s

	# ファイルサイズ(バイト単位)
	puts '容量:' + sb.size().to_s + 'バイト'
	puts ''


	sb << '0123456789'
	puts sb
	puts '大きさ:' + sb.length().to_s
	puts '容量:' + sb.size().to_s + 'バイト'
	puts ''

	# 0番目に文字列を挿入する
	sb.insert( 0, 'abcdefg' )
	puts sb
	puts '大きさ:' + sb.length().to_s
	puts '容量:' + sb.size().to_s + 'バイト'
	puts ''

	sb.insert( 7, 'hijklmnopqrstuvwxyz')
	puts sb
	puts '大きさ:' + sb.length().to_s
	puts '容量:' + sb.size().to_s + 'バイト'
	puts ''

	# 指定した文字を消去
	sb.delete!('lmnopqrstu456')
	puts sb
	puts '大きさ:' + sb.length().to_s
	puts '容量:' + sb.size().to_s + 'バイト'
	puts ''

end



出力結果を見てみましょう。
f:id:MrRadiology:20180123114935p:plain


<<前  [TOP]  次>>