Add Type to Ruby!
This project is maintained by S-H-GAMELINKS
Tatara::IntArray
is Array
class like static type programming lang
.
Tatara::IntArray
use Integer
value.
But, you can use Float
for value.
@i = Tatara::IntArray.new
@i[0] = 42
# => Set value 42 for index of 0.
@i[1] = 8.4
# => Set value 8 for index of 1.
But, can not use String
for value.
@i = Tatara::IntArray.new
@i[0] = "42"
# => Error!
Create new Tatara::IntArray
instance.
@i = Tatara::IntArray.new
Access by index.
@i = Tatara::IntArray.new
@i[0] = 42
puts @i[0]
# => 42
Set value by index.
@i = Tatara::IntArray.new
@i[0] = 42
# => Set value 42 for index of 0.
Create new value on end of Tatara::IntArray
.
@i = Tatara::IntArray.new
@i.push(42)
# => Set value 42 on end of `Tatara::IntArray`
Size of Tatara::IntArray
.
@i = Tatara::IntArray.new
puts @i.size
# => 0
@i.push(42)
puts @i.size
# => 1
Clear Tatara::IntArray
.
@i = Tatara::IntArray.new
@i.push(42)
puts @i.size
# => 1
@i.clear
puts @i.size
# => 0
Create new value on end of Tatara::IntArray
.
@i = Tatara::IntArray.new
@i << 42
# => Set value 42 on end of `Tatara::IntArray`
map
method for Tatara::IntArray
.
It’s likes Array#map
@i = Tatara::IntArray.new
(1..3).each{|i| @i << i }
# => Set new value's
@i.map{|i|
puts i
}
# => 1 2 3
map!
method for Tatara::IntArray
.
It’s likes Array#map!
@i = Tatara::IntArray.new
(1..3).each{|i| @i << i }
# => Set new value's
@i.map!{|i| i * 2 }
@i.map{|i|
puts i
}
# => 2 4 6
each
method for Tatara::IntArray
.
It’s likes Array#each
@i = Tatara::IntArray.new
(1..3).each{|i| @i << i }
# => Set new value's
@i.each{|i|
puts i
}
# => 1 2 3
each_with_index
method for Tatara::IntArray
.
It’s likes Array#each_with_index
@i = Tatara::IntArray.new
(1..3).each{|i| @i << i }
# => Set new value's
@i.each_with_index{|v, i|
puts "#{i}:#{v}"
}
# => 1:1 2:2 3:3
Intersection value’s
@i1 = Tatara::IntArray.new
(1..10).each{|i| @i1 << i}
@i2 = Tatara::IntArray.new
(10..20).each{|i| @i2 << i}
@i = @i1.intersection @i2
# => [10]
Intersection value’s
@i1 = Tatara::IntArray.new
(1..10).each{|i| @i1 << i}
@i2 = Tatara::IntArray.new
(10..20).each{|i| @i2 << i}
@i = @i1 & @i2
# => [10]
Sort value’s.
@i = Tatara::IntArray.new
[9, 1, 4].each{|i| @ << i }
@i = @i.sort
# => [1, 4, 9]
Sort value’s.
@i = Tatara::IntArray.new
[9, 1, 4].each{|i| @ << i }
@i.sort!
# => [1, 4, 9]
Reverse value’s.
@i = Tatara::IntArray.new
[9, 1, 4].each{|i| @i << i }
@i = @i.reverse
# => [4, 1, 9]
Reverse value’s.
@i = Tatara::IntArray.new
[9, 1, 4].each{|i| @i << i }
@i.reverse!
# => [4, 1, 9]
Remove duplicate in Tatara::IntArray
.
@i = Tatara::IntArray.new
[1, 3, 4, 1].each{|i| @i << i}
@i = @i.uniq
# => Remove duplicate!
@i.each{|i| puts i }
# => 1, 3, 4
Remove destructive duplicate in Tatara::IntArray
.
@i = Tatara::IntArray.new
[1, 3, 4, 1].each{|i| @i << i}
@i.uniq!
# => Remove duplicate!
@i.each{|i| puts i }
# => 1, 3, 4
Slice value’s’ in Tatara::IntArray
.
@i = Tatara::IntArray.new
[1, 2, 3, 4, 5].each{|i| @i << i}
@i = @i.slice(1, 3)
# => Slice value
@i.each{|i| puts i }
# => 2, 3, 4
Destructive Slice value’s’ in Tatara::IntArray
.
@i = Tatara::IntArray.new
[1, 2, 3, 4, 5].each{|i| @i << i}
@i.slice!(1, 3)
# => Slice value
@i.each{|i| puts i }
# => 2, 3, 4
Get first value of Tatara::IntArray
.
@i = Tatara::IntArray.new
(1..3).each{|i| @i << i }
# => Set new value's
puts @i.first
# => 1
Get last value of Tatara::IntArray
.
@i = Tatara::IntArray.new
(1..3).each{|i| @i << i }
# => Set new value's
puts @i.last
# => 3
Convert to Array
from Tatara::IntArray
.
@i = Tatara::IntArray.new
(1..3).each{|i| @i << i }
# => Set new value's
puts @i.to_array
# => 1, 2, 3
Convert to JSON
from Tatara::IntArray
.
@i = Tatara::IntArray.new
(1..3).each{|i| @i << i }
# => Set new value's
puts @i.to_json
# => Convert to JSON
Import to Array
from Tatara::IntArray
.
@i = Tatara::IntArray.new
@i.import_array [1, 2, 3]
# => Set new value's [1, 2, 3]
Import to JSON
for Tatara::IntArray
.
@i = Tatara::IntArray.new
@i.import_json "[1, 2, 3]"
# => Set new value's [1, 2, 3]