Título: Duda Java (para noob) Publicado por: JonaLamper en 13 Octubre 2014, 13:05 pm Buenos días gente, resulta que estoy aprendiendo Java y aún tengo un cacao mental con las clases, los métodos, los objetos y toda la película. Total que estoy intentando ejecutar un código que me calcula un combinatorio:
Código
El problema es que en la línea 7 me da el siguiente error: "Este método debe devolver un resultado tipo int." No sé si es que se me escapa algo o es que tengo los conocimiento demasiado verdes (o ambas cosas). De cualquier manera, gracias de ante mano. PD: se admiten consejos para los que estamos aprendiendo Java ;D Título: Re: Duda Java (para noob) Publicado por: engel lex en 13 Octubre 2014, 14:59 pm No se mucho.... pero si te pide retornar un tipo interna no deberías tener un
Código
O su equivalente para java? Título: Re: Duda Java (para noob) Publicado por: someRandomCode en 13 Octubre 2014, 16:00 pm Cambia la funcion para que no retorne nada (volvela void)
Título: Re: Duda Java (para noob) Publicado por: bengy en 14 Octubre 2014, 02:10 am seria asi
Código
investiga la diferencia entre funcion y procedimiento... suerte Título: Re: Duda Java (para noob) Publicado por: Odai en 25 Octubre 2014, 09:32 am Esta bien el método...
Código: public void combinatorio (int n, int k) { Ya que static se utiliza para : Citar Un Método static: Te recomiendo leer, programación en java 2 : algoritmos, estructuras de datos y programación orientada a objetos de Joyanes.- Tiene acceso solo a los atributos estáticos de la clase. - No es necesario instanciar un objeto para poder utilizarlo. A mi me gusto bastante el libro. Título: Re: Duda Java (para noob) Publicado por: ivancea96 en 25 Octubre 2014, 17:50 pm Eso mismo lo haces en C, probablemente no te de errores, pero eso es porque en C devuelve 0 por defecto si no me equivoco.
Título: Re: Duda Java (para noob) Publicado por: JonaLamper en 5 Noviembre 2014, 11:19 am Lo pongo aquí para no abrir otro hilo:
Quiero hacer un array bidimensional de String e inicializarlo a con el valor "0" a través de su constructora, pero... no me sale :( Código
¿Dónde estoy fallando? Título: Re: Duda Java (para noob) Publicado por: Senior++ en 5 Noviembre 2014, 11:42 am Jona, una pregunta, tu consigues los ejercicios de un curso en particular o tienes una web de ejercicios? :)
Título: Re: Publicado por: ivancea96 en 5 Noviembre 2014, 12:03 pm No se si podria ser eso, pero prueba a declarar Main() como public.
Además, prueba poniendo new String ... ... Dices que falla pero, qué problema te dá? Título: Re: Duda Java (para noob) Publicado por: JonaLamper en 5 Noviembre 2014, 12:26 pm Lo mismo pero más sencillo. Ahora intento meter en la posición 0,0 del array la palabra "hola" a traves del método setArray para después imprimirlo.
Código
El error: Exception in thread "main" java.lang.NullPointerException at ArrayVACIA.Main.setArray(Main.java:15) at ArrayVACIA.Main.main(Main.java:10) ----------------------------------------------------------------------------------------------------- Me descargué estos dos libros: - Fundamentos de programación de java, Jorge Martínez Ladrón de Guevara. - Aprenda java como si estuviera en primero, un puñado de escritores. Tengo pendiente de leer esto que tiene buena pinta: http://programacion.net/articulo/tutorjava_nivel_basico_97/61 E hice estos ejercicios: http://puntocomnoesunlenguaje.blogspot.com.es/p/ejercicios.html Título: Re: Duda Java (para noob) Publicado por: Senior++ en 5 Noviembre 2014, 15:35 pm Jona, te aconsejo estos ejercicios mejor
http://www.discoduroderoer.es/ejercicios-propuestos-y-resueltos-programacion-orientado-a-objetos-java/ y luego haz esos ;) Título: Re: Duda Java (para noob) Publicado por: ivancea96 en 5 Noviembre 2014, 17:50 pm Si tira un NPE, pues sí, será que tienes que inicializar la variable. En Java todos los objetos han de inicializarse.
Título: Re: Duda Java (para noob) Publicado por: JonaLamper en 6 Noviembre 2014, 00:41 am NPE?
Título: Re: Duda Java (para noob) Publicado por: crack81 en 6 Noviembre 2014, 01:25 am NPE
sicnifica que es un null pointer exception Título: Re: Duda Java (para noob) Publicado por: Zzombi en 6 Noviembre 2014, 03:27 am está clarito.. NULL POINTER, una variable apuntando a null.. por lo tanto no le puedes indicar las posiciones 0, 0 porque no tiene memoria reservada
Código
Título: Re: Duda Java (para noob) Publicado por: JonaLamper en 8 Noviembre 2014, 13:20 pm Ya que estamos, continuo con este thread. No me gusta que el foro se llene porque sí.
Esta vez es algo más complejo (todo el mundo avanza ;D). Realmente no sé cómo poner esto, porque yo lo manejo con un proyecto en eclipse, así que intentaré que quede claro. Como veis, es un 4 en raya. Ahora mismo inserto fichas (solo del color BLANCA para probar) en una matriz, así de simple. El problema que tengo es que no sé porqué me ejecuta dos veces el while. Es como si en la clase Controlador, el comando = in.nextLine(); cogiera el espacio en blanco que hay después de la pregunta "¿Que quieres hacer?" y claro, dice: ¡Comando incorrecto!. Pero después de vuelve a ejecutar ese mismo while, y esta vez sí se para al realizar la pregunta "¿Que quieres hacer?". Entonces, ¿por qué la primera vez no se para y la segunda vez sí se para? :( Estructura: paquete control: - Clase Controlador paquete logica: - Clase Partida - Clase Tablero paquete main: - Clase Main Código: Código
Código
Código
Código
Resultado: (http://nsae01.casimages.net/img/2014/11/08/mini_141108012044284940.png) (http://www.casimages.es/i/141108012044284940.png.html) Título: Re: Duda Java (para noob) Publicado por: Ocelot1994 en 15 Noviembre 2014, 00:01 am Le estuve echando un vistazo por encima y puede que me equivoque pero bueno alomejor el fallo que tienes ahí es en la variable fin.
Creo que tienes que igualar el fin a true ya sea en el if o en else sino te repetira el while hasta que le des a salir. Si te fijas tienes el fin = true cuando tecleas salir y ahí el while no te va a seguir por lo tanto tendras que igualar la variable a true en otro bucle para que te salga y no te entre de nuevo. Título: Re: Duda Java (para noob) Publicado por: JonaLamper en 17 Noviembre 2014, 22:30 pm Lo siento, olvidé poner que ya he encontrado el fallo. Resulta que al entrar de nuevo en el while, el nextInt() cogía el "enter" cuando lo pulsas.
Dentro del while, así es como quedaría: Código
La línea 13 sería la instrucción añadida. |