Манипулирование массивами в Real Studio

Я пытаюсь сделать некоторые вещи с массивами в Real Studio, но не могу найти ничего о них в документации.

Первое - это извлечение подмножеств многомерных массивов: я хочу сделать новый вектор из фрагмента столбца в заполненной мной матрице. В MATLAB или R это будет что-то вроде Matrix(1:5,2) для извлечения строк с 1 по 5 столбца 2. Есть ли какой-нибудь простой способ сделать это в Real Studio?

На аналогичной ноте мне интересно, есть ли способ получить функцию или операцию, которая возвращает индекс ячейки в массиве, а не сохраненное значение. Например, если бы я использовал функцию max для чего-то вроде max([1 2 3 4 8]), я бы хотел получить индекс наибольшего значения (5), а не 8.

Спасибо! Дайте мне знать, если я могу быть более конкретным.

1 ответ

Решение

Для первой части о извлечении подмножеств: вам нужно просто создать метод, который сделает это за вас. Вы можете использовать ключевое слово Extends, чтобы легко создать метод, который будет возвращать часть массива с синтаксисом myArray.getSubSet(1,5,2). Информация о расширениях: http://docs.xojo.com/index.php/Extends

С точки зрения получения индекса ячейки в массиве, если это одномерный массив, вы можете использовать array.indexOf(value), чтобы он возвращал индекс. Если вы хотите индекс максимального значения, theIndex = array.indexOf(max(array))

Другие вопросы по тегам