Проекты |
Хеш-таблицы, множества и массивыХеш массивы, или просто - массивы, известны во многих языках. Обычно массив это список, где у каждого элемента есть индекс. Простые массивы в качестве индексов могут иметь только число и часто индексы начинаются с 0. В Orion и php массивы в качестве индексов могут иметь строковое значение, поэтому они и становятся хеш-массивами. Общий синтаксисОбъявление массива происходит через функцию Array, как в классическом php.
Когда мы объявляем массив не задавая ключей (т.е. индексов), они определяются автоматически, начиная обычно с 0. Если вы хотите объявить массив с ключами, то необходимо это сделать так:
Рассмотрим сложный вариант, допустим вы хотите чтобы массив автоматически начинал индексироваться не с 0, а с 10 например. Такое тоже можно организовать:
Ключами массива могут быть числа, строки, логические переменные или даже пустая строка. Null для ключа массива будет все равно что пустая строка. Добавление элементовВ Орионе есть такая же возможность добавления элементов в массив как и в PHP:
Когда вы пишите [] обращение к массиву без ключа, то происходит добавление нового Null элемента в массив, все ключи тоже обычно начинаются с нуля. Если вы хотите чтобы добавление начиналось не с нуля, то можно сделать так:
Массивы как множестваОтличительной особенностью Ориона являются псевдо-множества, которые ничем не отличаются от массивов. Это просто короткая запись объявления массивов, которая отсутствует в PHP. Рассмотрим пример, чтобы стало понятно:
Как мы видим, такое объявление короче и часто удобней. Для компилятора эта одна и та же конструкция. Также давайте посмотрим другие примеры:
Многомерные массивыОрион поддерживает многомерные массивы как и PHP. Многомерный массив - это массивы, некоторые элементы которого, могут быть тоже массивами как одномерными, так и многомерными. Объявлять многомерные массивы также просто как и одномерные:
Рассмотрим эту же запись в виде множества:
Множества как мульти-результат функцийИзвестно, что в некоторых языках функция может возвращать несколько результатов одновременно. В Орионе это тоже возможно элегантно и красиво, благодаря записи массивов как множеств:
Функция list превращает массив в переменные. Строки как массивыСтроки на самом деле ведут себя немного также как и массивы. К каждому символу строки можно обратится по его индексу прямо как в массиве, так можно изменять и получать определенные символы строки:
вернутся к списку |