Библиотеки » Основная библиотека (dart:core) 10 интерфейс boolИнтерфейс bool служит для представления булевских (логических) значений, которые могут принимать только два значения истинно или ложно (true или false). Значения типа bool возвращаются в качестве результата всеми операторами сравнения, например (а < b, a != b, a > b), а так же этот тип обязателен для использования в условных выражениях, которые управляют такими конструкциями как if, for и while и т.д. интерфейс ComparableИнтерфейс Comparable предназначен для определения функции сравнения объектов, и реализации так называемого естественного порядка их следования. Данный интерфейс содержит всего один метод, который и должен реализовывать функцию сравнения. Comparable используется в нескольких интерфейсах базовой библиотеки, таких как num, Date, Duration, String. интерфейс DateTimeИнтерфейс Date является базовым интерфейсом для объектов, представляющими время, обычно выраженное как дата, время суток и часовой пояс. Методы интерфейса позволяют получать индивидуальные значения для отдельных компонентов даты и времени, таких как - год, месяц, день, час, минута, секунда. Кроме того, в интерфейсе Date описываются методы для простых арифметических операций со временем - добавление, и вычитание промежутков времени, вычисление разницы между заданными датами. интерфейс doubleИнтерфейс double предназначен для работы с вещественными числами интерфейс DurationИнтерфейс Duration является базовым интерфейсом для представления временных отрезков. Промежутки времени могут быть как положительными, так и отрицательными. класс ExpectКласс Expect предоставляет набор методов, проверяющих различные утверждения, в процессе модульных тестов, и генерирующих, при необходимости, исключения типа ExpectException, которыые обрабатываются механизмом модульного теста, для того, чтобы указывать на ложность утверждений, и останавливать исполнение тестов. исключение ExpectExceptionИсключение ExpectException представляет неудачу выполнения операций в модульном тесте. Данное исключение не следует использовать и обрабатывать самостоятельно, поскольку это исключение обрабатывается механизмом модульного теста, чтобы указывать на ложность утверждений, и останавливать исполнение тестов. интерфейс HashableИнтерфейс Hashable предназначен для определения функции расчета хеш-кода объектов. Данный интерфейс содержит всего один метод, который и должен реализовывать хэш функцию. Hashable используется в нескольких интерфейсах базовой библиотеки, таких как num, SendPort, String. класс Iterable Абстрактный класс Iterable является базовым классом для представления коллекций (составных объектов). На основе данного интерфейса построен весь каркас системных коллекций (списки, очереди, множества и т.д.). В данном интерфейсе определены методы работы с составным объектом в целом - обработка каждого элемента, фильтрация элементов, проверка элементов на соответствие различным условиям, определение размера коллекции и т.д. Коллекция, реализующая его, может формировать объект-итератор, реализующий интерфейс Iterator, а значит может быть использована в конструкции for (в виде for-in). класс Iterator Абстрактный класс self описывает методы для перебора элементов коллекций или составных объектов, например, таких как, массивы, списки или множества. Эти методы используются в конструкциях for-in для получения элементов и проверки завершения итераций, чтобы определить пройдены ли все элементы. Основное предназначение итераторов заключается в предоставлении возможности обращаться к любому элементу контейнера коллекции, изолируя при этом внутренную структуру данных. Таким образом, в контейнере возможно хранить элементы любым способом, а работать с ними как с простой последовательностью значений. Первоначально итератор указывает на позицию перед первым элементом. То есть для того, что бы получить доступ к первому элементу последовательности, сначало необходимо вызвать метод moveNext и передвинуть указатель на первый элемент. Стоит так же отметить, что поведение итератора не определено в случае, если объект-контейнер изменяется в процессе итерации. класс BidirectionalIterator Абстрактный класс self описывает методы для перебора элементов коллекций или составных объектов, например, таких как, массивы, списки или множества. В отличии от родительского класса Iterator он так же позволяет передвигаться по элементам в обратном направлении. Стоит отметить, что поведение итератора не определено в случае, если объект-контейнер изменяется в процессе итерации. класс List Абстрактный класс List представляет массив с фиксированным или динамическим размером, и с доступом к элементам, осуществляемым при помощи числового индекса. Данная коллекция по определению упорядочена, и соответственно можно полностью управлять тем, куда помещать новые элементы, откда удалять элементы и сортировать и переупорядочивать существующие. Кроме этого списки поддерживают операции поиска элементов в коллекции. интерфейс Map<K, V>Интерфейс Map описывает методы работы с ассоциативным массивов (словарем), состоящим из пар "ключ - значение". Поддерживает работу со значениями типа null. интерфейс Set<E>Интерфейс Set - является базовым интерфейсом для коллекций элементов, типа "множество". "Множество" Set представляет неупорядоченную коллекцию, хранящую набор уникальных значений (не может содержать повторяющихся элементов). Коллекция поддерживает операции добавления, удаления и определения вхождения, а элементы "множества" не сортируются. интерфейс StringИнтерфейс String представляет строку символов. Объекты типа String являются неизменяемыми объектами, и чтобы внести изменения необходимо создавать новую строку, содержащую требуемые модификации. Каждая строка описывается как упорядоченный массив 32-разрядных символов Юникода, доступ к которым осуществляется через методы charCodeAt и charCodes. класс StringsКласс Strings представляет ряд вспомогательных методов для работы со строками, таких как объединение строк (join, concatAll), и создание строки из последовательности кодов символов (fromCharCodes). интерфейс StringBufferКласс StringBuffer представляет инструментарий для эффективной конкатенации (объединении) строк. Методы добавления новых строк в буфер не приводят к формированию единой строки, только вызов метода toString служит для создания объединенной строки, за счет этого значительно повышается производительность для операций добавления строк в массив. интерфейс StopwatchИнтерфейс Stopwatch представляет простой секундомер для измерения временных промежутков. интерфейс TimeZoneИнтерфейс TimeZone представляет отдельный часовой пояс, например, "Europe/Moscow" или "Europe/Paris". Часовой пояс задается как положительное и отрицательное смещение от UTC, причем отрицательные смещения у часовых поясов к западу от нулевого меридиана, а положительные — к востоку. Время по UTC не переводится ни зимой, ни летом, поэтому для тех часовых поясов, где есть перевод на зимнее/летнее время, смещение относительно UTC меняется. интерфейс Pattern интерфейс MatchИнтерфейс Match представляет совпадение внутри строки с регулярным выражением. интерфейс intИнтерфейс int представляет целые числа. интерфейс numИнтерфейс int представляет числа. Целые числа описываются с помощью интерфейса - int, а вещественные - double. интерфейс Completer<T>A Completer is used to produce Futures and supply their value when it becomes available. A service that provides values to callers, and wants to return Futures can use a Completer as follows: Completer completer = new Completer(); // send future object back to client... return completer.future; ... // later when value is available, call: completer.complete(value); // alternatively, if the service cannot produce the value, it // can provide an exception: completer.completeException(exception); интерфейс Future<T>A Future is used to obtain a value sometime in the future. Receivers of a Future obtain the value by passing a callback to then. For example: Future<int> future = getFutureFromSomewhere(); future.then((value) { print("I received the number " + value); }); интерфейс FunctionИнтерфейс Function служит для представления анонимных функций. интерфейс RegExpИнтерфейс RegExp представляет регулярное выражение. класс FuturesFutures holds additional utility functions that operate on Futures (for example, waiting for a collection of Futures to complete). интерфейс OptionsThe Options object allows accessing the arguments which have been passed to the current isolate. интерфейс ExceptionИнтерфейс Exception представляет исключение, и является базовым для всех системных исключений. класс Object класс ClockКласс Clock обеспечивает доступ к системному таймеру, с известной частотой счета, и равномерно увеличивающемуся счетчику. интерфейс ByteArrayИнтерфейс ByteArray служит для представления байтовых массивов фиксированной длины. В нем предусмотрены методы для чтения и записи двоичных данных. исключение NullPointerExceptionКласс NullPointerException представляет исключение, связанное попыткой обратиться к несуществующим данным. исключение StackOverflowExceptionКласс StackOverflowException представляет исключение, связанное с переполнением стека. исключение UnsupportedOperationExceptionКласс UnsupportedOperationException представляет исключение, связанное с неподдерживаемой операцией. исключение NotImplementedExceptionКласс NotImplementedException представляет исключение, связанное с попыткой выполнить еще не реализованный функционал. исключение WrongArgumentCountExceptionКласс WrongArgumentCountException представляет исключение, связанное с использованием неверного количества аргументов. исключение ObjectNotClosureExceptionКласс ObjectNotClosureException представляет исключение, связанное с использованием объекта, в качестве анонимной функции. исключение FutureNotCompleteExceptionThrown when reading a future's properties before it is complete. исключение OutOfMemoryExceptionКласс OutOfMemoryException представляет исключение, связанное с нехваткой памяти. исключение IndexOutOfRangeExceptionКласс IndexOutOfRangeException представляет исключение, связанное с использованием неправильного индекса, когда индекс выходит за допустимые границы. исключение IllegalArgumentExceptionКласс IllegalArgumentException представляет исключение, связанное с вызовом метода или функции с некорректным значением аргумента(ов). исключение NoMoreElementsExceptionКласс NoMoreElementsException представляет исключение, вызываемое итератором, в случае, когда больше нет элементов. исключение IntegerDivisionByZeroExceptionКласс IntegerDivisionByZeroException представляет исключение, связанное с делением целых чисел на ноль. исключение ClosureArgumentMismatchExceptionКласс ClosureArgumentMismatchException представляет исключение, связанное с вызовом анонимной функции, с неверным количеством аргументов. исключение IllegalAccessExceptionКласс IllegalAccessException представляет исключение, связанное с попыткой изменить неизменяемый объект. исключение FutureAlreadyCompleteExceptionThrown if a completer tries to set the value on a future that is already complete. исключение BadNumberFormatExceptionКласс BadNumberFormatException представляет исключение, связанное с использованием числа в некорректном формате. исключение EmptyQueueExceptionКласс EmptyQueueException представляет исключение, связанное с обращению к элементам пустой очереди Queue. исключение NoSuchMethodExceptionКласс NoSuchMethodException представляет исключение, связанное с попыткой вызвать несуществующий метод. исключение IllegalJSRegExpExceptionКласс IllegalJSRegExpException представляет исключение, связанное с неверными регулярными выражениями.