# Array with 2 of the same value

**URL:** <https://discourse.processing.org/t/array-with-2-of-the-same-value/4892>\
**Category:** Coding Questions\
**Tags:** homework\
**Created:** [October 26, 2018, 7:35am UTC](https://discourse.processing.org/t/array-with-2-of-the-same-value/4892 "2018-10-26T07:35:29Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Tristan](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/tristan/32/1568_2.png) [@Tristan](https://discourse.processing.org/u/Tristan)\
**Post date:** [October 26, 2018, 7:35am UTC](https://discourse.processing.org/t/array-with-2-of-the-same-value/4892/1 "2018-10-26T07:35:29Z")

</div>

Hello, im trying to make an array using a for loop that contains two of the same values. It would like like this if you write it out.  
int [] cardSets= {0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13, 14, 14, 15, 15,  
16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 30, 30, 31, 31};

the loop as it is now, looks like this:

```auto
int [] cardSets = new int[amountOfSets];

void cardSetsArray() {
   for(int i = 0; i < cardSets.length -1; i++) {
      cardSets[i] = 0 + i;
      cardSets[i + 1] = 0 + 1;
}

```

So what im trying to create, is an array with the same value twice, based off of the length that is picked with amountOfSets.  
However this creates an array where only the last two indexes are the same value.

---

<div class="post-metadata">

**Author:** ![jb4x](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/jb4x/32/789_2.png) [@jb4x](https://discourse.processing.org/u/jb4x)\
**Post date:** [October 26, 2018, 7:43am UTC](https://discourse.processing.org/t/array-with-2-of-the-same-value/4892/2 "2018-10-26T07:43:57Z")

</div>

Hi,

Please, edit your post and format your code. It is all explained here: [Guidelines—Tips on Asking Questions](https://discourse.processing.org/t/guidelines-tips-on-asking-questions/2147)  
**EDIT:** Thanks 🙂

The problem with your code is that your are looping one increment at a time so even if inside your loop you assign the 2 same values you erase that value in the second increment. Since example speaks more than words:

- First loop: i = 0
  - kaartSets[0] = 0
  - kaartSets[1] = 0

Everything is ok here but look what happens in the second loop:

- Second loop: i = 1 -\> Only one increment:
  - kaartSets[1] = 1
  - kaartSets[2] = 1

Now you start to mess things up because you are changing the value of the element [1].

Now, you have several way to achieve what you want to do, here’s one:

```auto
int [] cardSets = new int[amountOfSets];
int value = 0

void cardSetsArray() {
  for(int i = 0; i < cardSets.length -1; i+=2) {
    cardSets[i] = value;
    cardSets[i + 1] = value;
    value++;
  }
}

```

---

<div class="post-metadata">

**Author:** ![Tristan](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/tristan/32/1568_2.png) [@Tristan](https://discourse.processing.org/u/Tristan)\
**Post date:** [October 26, 2018, 7:54am UTC](https://discourse.processing.org/t/array-with-2-of-the-same-value/4892/4 "2018-10-26T07:54:15Z")

</div>

Ah yes i see, thanks for showing me. This helped a lot and sorry for forgetting to format my code!

---

<div class="post-metadata">

**Author:** ![GoToLoop](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/gotoloop/32/86_2.png) [@GoToLoop](https://discourse.processing.org/u/GoToLoop)\
**Post date:** [October 26, 2018, 11:18am UTC](https://discourse.processing.org/t/array-with-2-of-the-same-value/4892/5 "2018-10-26T11:18:20Z")

</div>

```java
/**
 * Same Value Pair Array (v1.0)
 * GoToLoop (2018/Oct/26)
 * https://Discourse.Processing.org/t/array-with-2-of-the-same-value/4892/5
 */

static final int SIZE = 64;
final int[] cardSets = new int[SIZE];

void setup() {
  fillArraySameValuePair(cardSets);
  println(cardSets);
  exit();
}

static final int[] fillArraySameValuePair(final int[] arr) {
  for (int i = 0; i < arr.length; arr[i] = i++ >> 1);
  return arr;
}

```
