You can use is_a? or there is kind_of? and instance_of? methods
so you could test as follows
arr.each do |a|
if a.is_a? Integer
#do stuff here
end
end
You can also use this in a case construct.
the 'Integer' is the type - you can also have things like Bignum, Fixnum, Numeric, String, Object, Array etc.
HTH
Clive
---- Shuaib Zahda <shuaib.zahda@gmail.com> wrote:
···
Hi
I am working on application that emphasizes on the data types of the
data. The application reads a line from the user by the prompt. then it
divides the entry into parts based on comma separator.
e.gf = gets
<user input> "apple", 5, 8.9, "red"after i split them in an array
arr = f.split(", ")
they will be all converted into string and stored in arr as elements of
array.
I need to check whether the type of 5 is integer or not, 8.9 is float,
etc. In this case it is fine but in the case that the user keys in
string instead of float. the methods to_i, to_f will convert the string
into 0 and assume it is of that type.Is there any mechanism that allows me to check the data type ?
Regards
Shuaib
--
Posted via http://www.ruby-forum.com/\.