Wypelnianie tablicy danymi, ArrayList , Arrray.add

0
                int n = 2;
		int k = 48;
		
		for(int i=0;i<52;i++)
		{
			talia.add(n);
			if(talia.size()%4==0)
				n++;
			if (n>10)
				n=10;
		}
		
		for(int i=0;i<4;i++)
		{
			talia.set(k, 11);
			k++;
		}

Staram sie wypelnic tabele danymi, tak ze wrzucane sa liczby od 2 do 11, wartosc indexu zmienia sie co 4
Ostatecznie chce miec
po 4 indexy z wartosciami 2-9,
4 indexy z wartoscia 11,
16 indexow z wartoscia 10.

output

[2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 8, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11]

Ogolnie talia pod blackjack'a
Powyzszy kod dziala, ale nie jestem z niego zadowlony, probowalem roznych wersji w jednej petli jednak nie moglem uzyskac tego co chciaem. Mozecie mi dac wskazowki jak uzyskac w/w efekt w jednej petli?

1

Ja bym zrobił to tworząc dodatkową funkcję, wtedy moim zdaniem wygląda ładnie i czytelnie:

  
public static void dodajDoTalii(int co, int ileRazy) {
    for(int i = 0; i < ileRazy; i++) {
        talia.add(co);
    }
}

public static void main(String[] argv) {

    for(int i = 2; i <= 9; i++) {
        dodajDoTalii(i, 4);
    }
    dodajDoTalii(10, 16);
    dodajDoTalii(11, 4);
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1