试题要求:
# (1) 定义一个main方法, 接收一个参数,类型是数组,若不是数组要抛异常;
# (2) 校验数组中的每个元素是字符串,若存在不是字符串的元素抛异常;
# (3) 对数组中的元素按两种方式排序:
# (3.1) 按元素字符串的长度从小到大排序;
# (3.2) 按元素中所有字符的ASCII码之和排序,也是从小到大
# (4) main方法以数组的形式返回两次的排序结果,例如:
# main(["ab", "abc", "a"]) => [["a", "ab", "abc"], ["a", "ab", "abc"]]
#
# 注: 涉及抛出异常地方,异常类型与异常信息不限
def main(array_list)
# 在这里开始编码 ...#if array_list.is_a(Array) then #is_a -- 如果对象属于该类或该类是此对象的父类则返回 TRUE
if array_list.is(Array) then #is_a -- 如果对象属于该类或该类是此对象的父类则返回 TRUE
array_list.each do |array| #遍历ARRAY中值
if array.instance_of?(String) == false then #遍历HASH中值是否分别为String类型
raise "=*=*=*=值是否是String类型=*=*=*="
end
end
p array_list
else
raise "=*=*=*=参数非哦数组类型=*=*=*="
end
end
array_list = ["ab", "abc", "a"]
p array_list.sort
#main(array_list)