Eliminar cualquier fila de una matriz (Array bidimensional)

Saludos Java Mexico:

Les escribo por que tengo un problema, no se como puedo eliminar una fila a una matriz:

Ejemplo:

int [][]h={{1,2,3},{4,5,6,7},{8,9,10,11,12}};

y lo que representa es:

"FILA 0": 1 2 3
"FILA 1": 4 5 6 7
"FILA 2": 8 9 10 11 12

y ahora quiero AHORA ES ELIMINAR LA "FILA 1"

"FILA 0": 1 2 3
"FILA 1": 8 9 10 11 12

Les agradeceria por favor me puedan orientar o ayudar con este problema. Gracias.

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.

Lo que tienes que hacer es

Lo que tienes que hacer es copiar los elementos ( las filas ) a una nueva y omitir la que no quieres:

int [][] destino = new int[origen.length-1][];
System.arrayCopy( origen, 0, destino, 0, 1 ); // copia la primera a la primera
System.arrayCopy( origen, 2, destino, 1, 1 ); // copia la tercera y la en la segunda

Esa es la idea, no sé exactamente como funcionará

Imagen de ezamudio

Maneja listas

En vez de arreglos, que son inmutables en cuanto a tamaño, puedes manejar listas. Ya sea LinkedList o ArrayList (una lista de listas para tu matriz).

Resultado de la Prueba del uso de "System.arrayCopy"

Gracias OscarRyz, te cuento que hice la prueba y funciona muy bien, pero ahora como puedo hacer que en origen[][] solo tenga las filas de destino [][] (es decir: solo todas las filas excepto la que queria). Bueno yo intente hacer lo mismo que tu hiciste pero no funciona, me muestra todas las filas.

public class Principal
{
        public static void mostrarArrayBidimensionalInt(int[][] a)
        {
                System.out.println("** Vector Bidimensional [" + a.length + " Filas ]**");
                for (int i = 0; i < a.length; i++)
                {
                        for (int j = 0; j < a[i].length; j++)
                        {
                                System.out.print(a[i][j] + " ");
                        }
                        System.out.println();
                }
                System.out.println("****************************");
        }

        public static void main(String[] args)
        {
                int[][] origen = { { 1, 2, 3 }, { 4, 5, 6, 7 }, { 8, 9, 10, 11, 12 } };
                int[][] destino = new int[origen.length - 1][];

                System.out.println("Origen [Original]: ");
                mostrarArrayBidimensionalInt(origen);

                System.arraycopy(origen, 0, destino, 0, 1); // copia la primera a la
                                                                                                        // primera
                System.arraycopy(origen, 2, destino, 1, 1); // copia la tercera y la en
                                                                                                        // la segunda
                System.out.println("Destino: ");
                mostrarArrayBidimensionalInt(destino);

                System.arraycopy(destino, 0, origen, 0, destino.length);
                System.out.println("Origen: ");
                mostrarArrayBidimensionalInt(origen);
        }
}

Les agradeceria me puedan ayudar.

Gracias...

Hola ezamudio, mil disculpas, te cuento que no habia escuchado antes de LinkedList o ArrayList, no se si me puedas guiar con el uso de ambos tipos de listas, por que no los conozco, no se como utilizarlos. De todos modos, gracias por la ayuda brindada. Hasta otra oportunidad.