Dúvida com array

Pessoal,

Estou com uma dúvida simples com arrays. Procurei em todo o forum e não achei um problema parecido com o meu.
É o segunte:

Tenho dois arrays. Um deles tem tamanho X. O segundo tem tamanho 3X.
Exemplo: int[] a = new int[400]; int[] b = new int[1200];

O que eu preciso é uma forma de colocar na posição 0 do array a, a soma das três primeiras posições do array b. Na posição 1 a soma das 3 próximas, e assim por diante.
Ex: a[0] = b[0] + b[1] + b[2]; a[1] = b[3] + b[4] + b[5]; (...)

Já tentei vários loops mas não consegui fazer.

Dedraks, bom dia!

Segue um exemplo do que você quer:


	public static void main(String[] args) {
		
		int array1[] = new int[2];
		int array2[] = new int[6];
		
                // preencher array 1 com valores sequenciais (1...n)
		for (int i=0; i<array1.length; i++) {
			array1[i] = i+1;
		}

                // preencher array 2 com valores sequenciais (1...n)
		for (int i=0; i<array2.length; i++) {
			array2[i] = i+1;
		}

                // bloco apenas para mostrar os valores do array1 concatenados
		String valores = "";
		for (int i=0; i<array1.length; i++) {
			valores = valores + array1[i];
		}
		System.out.println("Valores do Array 1: " + valores);
		
		// este bloco faz o processamento que você deseja...
		int cont=0;
		for (int i=0; i<array1.length; i++) {
			
			array1[i] = (array2[cont] +
					     array2[cont+1] +
					     array2[cont+2]);
			
			cont = cont + 3;
		
		}

                // blocos apenas para exibir os valores de forma concatenada ... 
		valores = "";
		for (int i=0; i<array2.length; i++) {
			valores = valores + array2[i];
		}
		System.out.println("Valores do Array 2: " + valores);
		
		valores = "";
		for (int i=0; i<array1.length; i++) {
			valores = valores + array1[i];
		}
		System.out.println("Valores Processados do Array 1: " + valores);
				
	}

Abraço,

Obrigado :wink:

Valeu deu certinho aqui.
O problema era o seguinte:
Eu tenho um arquivo que representa uma imagem em formato raw.
Uma imagem toda vermelha nesse arquivo seria assim: FF 00 00 FF 00 00 FF 00 00 FF 00 00 ...
Então meu problema era carregar esse arquivo em um array de bytes e depois jogar a cada 3 posições em um array de int.
Enão meu código ficou assim:

[code]
byte[] buffer = [altura * largura * 3];
int[] pixels = [altura * largura];
// Carrego o arquivo
(…)
// Faço o loop que você me passou
int cont=0;
for (int i=0; i<pixels.length; i++) {

        pixels[i] = Color.rgb(buffer[cont] & 0xFF, buffer[cont+1] & 0xFF, buffer[cont+2] & 0xFF);

        cont = cont + 3;  
    }

// Continuo com meu programa[/code]

Muito obrigado pela ajuda