Робота з масивами в Processing

Якщо у вашому скетчі всього дві змінні, вам буде зручно оголосити їх окремо як float або int Але якщо потрібно багато змінних, це не найкращий спосіб У цьому випадку слід використовувати масив Масив – це просто набір змінних одного типу У цьому прикладі ми розглянемо функції Processing, задумані для роботи з масивами

Як це робиться

Перше, що ми зробимо – оголосимо два масиви змінних типу floats і присвоїмо їм значення Це з легкістю робиться за допомогою фігурних дужок і чисел, розділених комами

float[] array1 = { 10, 47, 308 } float[] array2 = { 7286, 4832 }

void setup()

{

noLoop()

}

У функції draw () ми виведемо на консоль вихідні дані Перше, що ми рамотрім – додавання додаткових чисел до масиву за допомогою функції append ()

println( &quotNew Array: Array 1 + new float&quot ) println( &quot——————————&quot)

float[] newArray = append( array1, 12775 ) println( newArray )

println()

Далі подивимося, як можна копіювати другий масив і вставити його в інший за допомогою функції arrayCopy ()

println( &quotCopied Array 2 to New Array&quot ) println( &quot——————————&quot)

arrayCopy( array2, 0, newArray, 2, 2 ) println( newArray )

println()

Якщо вам не потрібно окпіровать і вставляти масив, ви можете просто обєднати масиви у функції concat ()

println( &quotAdd array2 to end of array1&quot ) println( &quot——————————&quot)

float[] superArray = concat( array1, array2 ) println( superArray )

println()

Інша важлива функція це збільшення розміру масиву Візьмемо, наприклад, масив superArray, який я створив з першого і другого масиву за допомогою функції expand ()

println( &quotIncrease the size of an array&quot ) println( &quot——————————&quot)

println( &quotLength before expanding: &quot + superArraylength ) superArray = expand( superArray )

// double length of array

println( &quotLength after expanding: &quot + superArraylength)

// expand array to length of 256 superArray = expand( superArray, 256 )

println( &quotLength after expanding: &quot + superArraylength ) println()

Для отримання певних елементів масиву використовується функція subset () МИ вже робили щось схоже в прикладі Працюємо з рядками, Коли застосовували метод substring ()

println( &quotExtract elements from an array&quot ) println( &quot——————————&quot)

float[] shortArray = subset( superArray, 1, 4 ) println( shortArray )

Of the last two functions well use, one is to reverse an array and another is to sort the numbers from small to big

println( &quotReverse the order of the array&quot ) println( &quot——————————&quot)

float[] reversed = reverse( shortArray ) println( reversed )

println( &quotSort the values of the array&quot ) println( &quot——————————&quot)

float[] sorted = sort( shortArray ) println( sorted )

Коли ви запустите скетч ви побачите результат роботи цих функцій

New Array: Array 1 + new float

—————————— [0] 10

[1] 47

[2] 308

[3] 12775

Copied Array 2 to New Array

—————————— [0] 10

[1] 47

[2] 7286

[3] 4832

Add array2 to end of array1

—————————— [0] 10

[1] 47

[2] 308

[3] 7286

[4] 4832

Increase the size of an array

——————————

Length before expanding: 5 Length after expanding: 10 Length after expanding: 256 Extract elements from an array

—————————— [0] 47

[1] 308

[2] 7286

[3] 4832

Reverse the order of the array

—————————— [0] 4832

[1] 7286

[2] 308

[3] 47

Sort the values of the array

—————————— [0] 308

[1] 47

[2] 4832

[3] 7286

Як це працює

Отже, ми освоїли кілька простих функцій для роботи з масивами А тепер розглянемо їх докладніше

f Функція append () використовується для додавання одного елемента в кінець масиву Перший параметр – це масив, до якого ви хочете додати елемент, а другий це, власне, величина, яку ви хочете додати Зверніть увагу, що величина повинна бути того ж типу що і елементи масиву

f Функція arrayCopy () використовується для копіювання всього масиву або його частини в інший масив У цьому прикладі я використав цю функцію з пятьма параметрами Перший параметр це вихідний масив, а другий це початковий елемент у масиві Третій параметр займає масив-адресат, а четвертий встановлює позицію масиву в ньому Останній параметр служить для вказівки числа копійованих елементів

f Якщо у вас є кілька масивів одного типу, функція concat ()

обєднає їх в один новий масив

f Функція expand () збільшує розмір масиву Якщо ви використовуєте цю функцію з одним параметром, розмір масиву подвоюється Ви можете додати другий параметр для вказівки довжини масиву, якщо не хочете, щоб він подвоївся

f Функція subset () використовується для отримання частини масиву Перший параметр потрібен для вказівки масиву, фрагмент якого ви копіюєте, другий для вказівки елемента, з якого ви хочете почати, а третій встановлює кількість копійованих елементів

f Функція reverse () використовується для измения порядку елементів у масиві

f Функція sort () сортує величини в масиві Якщо у вас, як у нашому прерії, є масив чисел, вони будуть розсортовані від менших до більших Якщо ж це масив рядків, вони будуть розставлені за алфавітом

Джерело: Ян Вантомм, Processing 2: креативне програмування, переклад з англійської Олександри Мішутіної, Published by Packt Publishing Ltd, 2012, BIRMINGHAM – MUMBAI

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*