Манипулирование массивами в 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))