Загрузка данных


Задача №14. Создать класс для хранения данных встроенных типов в виде одномерного массива. Тип элементов массива – object. Описать методы проверки на соответствия всех чисел массива символам, целым и дробным числам. Если данные не соответствуют проверяемому типу генерируется исключение.

Максимальная оценка – 4 балла.
using System;

using System.Linq;

public class ObjectArray

{

    private object[] data;

    public ObjectArray(object[] array)

    {

        data = array;

    }

    public void CheckAllChars()

    {

        foreach (var item in data)

        {

            if (!(item is char))

                throw new InvalidOperationException($"Элемент '{item}' не является символом");

        }

    }

    public void CheckAllIntegers()

    {

        foreach (var item in data)

        {

            if (!(item is int || item is long || item is short || item is byte))

                throw new InvalidOperationException($"Элемент '{item}' не является целым числом");

        }

    }

    public void CheckAllFloats()

    {

        foreach (var item in data)

        {

            if (!(item is float || item is double || item is decimal))

                throw new InvalidOperationException($"Элемент '{item}' не является дробным числом");

        }

    }

}

class Program

{

    static void Main()

    {

        var arr = new ObjectArray(new object[] { 'a', 'b', 'c' });

        arr.CheckAllChars(); // OK

        var arr2 = new ObjectArray(new object[] { 1, 2, 3 });

        arr2.CheckAllIntegers(); // OK

        var arr3 = new ObjectArray(new object[] { 1.5, 2.7, 3.14 });

        arr3.CheckAllFloats(); // OK

        var arr4 = new ObjectArray(new object[] { 1, "test", 3.5 });

        arr4.CheckAllIntegers(); // Исключение

    }

}