Foros del Web » Programación para mayores de 30 ;) » Java »

Comparacion Array con palabra entrada por teclado

Estas en el tema de Comparacion Array con palabra entrada por teclado en el foro de Java en Foros del Web. Siento ser tan pesada y preguntar por segunda vez, pero me ha surgido otra duda: Tengo el array: nouArrayModul[].moduls En la posicion: nouArrayModul[posicionDNI].moduls tengo estos ...
  #1 (permalink)  
Antiguo 12/04/2013, 03:47
 
Fecha de Ingreso: diciembre-2012
Mensajes: 21
Antigüedad: 11 años, 11 meses
Puntos: 0
Comparacion Array con palabra entrada por teclado

Siento ser tan pesada y preguntar por segunda vez, pero me ha surgido otra duda:

Tengo el array: nouArrayModul[].moduls
En la posicion: nouArrayModul[posicionDNI].moduls tengo estos datos: M1 M2 M3
y tengo que entrar un modulo por teclado o M1 o M2 o M3 o M4 que se llamara modul.

Entonces tengo que mirar si modul esta en la posicionDNI del nouArrayModul.

Yo puse:
Que se que esta mal porque es imposible que:
M1 M2 M3 sea igual a M1... pero no se como hacer para que no me lo compare, si no que me revise si lo incluye.


if (((nouArrayModul[posicionDNI].moduls).equals(modul))&&(modul=="M1")) {
cmodul = true;
}
if (cmodul==true) {
Modul1(opcio, posicio, intrAlumnes, posMod, posUF, dni, modul);
} else {
if (((nouArrayModul[posicionDNI].moduls).equals(modul))&&(modul=="M2")) {
cmodul = true;
}
if (cmodul==true) {
Modul2(opcio, posicio, intrAlumnes, posMod, posUF, dni, modul);
} else {
if (((nouArrayModul[posicionDNI].moduls).equals(modul))&&(modul=="M3")) {
cmodul = true;
}
if (cmodul==true) {
Modul3(opcio, posicio, intrAlumnes, posMod, posUF, dni, modul);
} else {
if (((nouArrayModul[posicionDNI].moduls).equals(modul))&&(modul=="M4")) {
cmodul = true;
}
if (cmodul==true) {
Modul1(opcio, posicio, intrAlumnes, posMod, posUF, dni, modul);
} else {
System.out.println("Aquest alumne, no esta matriculat en el modul: " +modul+"");
evaluacioModul(posicionDNI, opcio, posicio, intrAlumnes, posMod, posUF, dni, modul);
}
}
}
}
  #2 (permalink)  
Antiguo 12/04/2013, 04:46
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 16 años, 2 meses
Puntos: 188
Respuesta: Comparacion Array con palabra entrada por teclado

modul=="M1" => Estooo, que te dijimos sobre comparar objetos?
__________________
if (fuzzy && smooth) {
fuzzylog = "c00l";
return true;
}
  #3 (permalink)  
Antiguo 12/04/2013, 04:51
 
Fecha de Ingreso: diciembre-2012
Mensajes: 21
Antigüedad: 11 años, 11 meses
Puntos: 0
Respuesta: Comparacion Array con palabra entrada por teclado

Espera que me acabo de perder
el == para comparar
el = para asignar
Y en este caso quiero comparar...
  #4 (permalink)  
Antiguo 12/04/2013, 04:53
 
Fecha de Ingreso: diciembre-2012
Mensajes: 21
Antigüedad: 11 años, 11 meses
Puntos: 0
Respuesta: Comparacion Array con palabra entrada por teclado

vale vale con .equals... a ver si funciona
  #5 (permalink)  
Antiguo 12/04/2013, 04:56
 
Fecha de Ingreso: diciembre-2012
Mensajes: 21
Antigüedad: 11 años, 11 meses
Puntos: 0
Respuesta: Comparacion Array con palabra entrada por teclado

Fuzzylog, lo cambie pero me sigue sin salir...

if (((nouArrayModul[posicionDNI].moduls).equals(modul))&&((modul).equals("M1"))) {
cmodul = true;
}
if (cmodul==true) {
Modul1(posicionDNI, opcio, posicio, intrAlumnes, posMod, posUF, dni, modul);
} else {
if (((nouArrayModul[posicionDNI].moduls).equals(modul))&&((modul).equals("M2"))) {
cmodul = true;
}
if (cmodul==true) {
Modul2(posicionDNI, opcio, posicio, intrAlumnes, posMod, posUF, dni, modul);
} else {
if (((nouArrayModul[posicionDNI].moduls).equals(modul))&&((modul).equals("M3"))) {
cmodul = true;
}
if (cmodul==true) {
Modul3(posicionDNI, opcio, posicio, intrAlumnes, posMod, posUF, dni, modul);
} else {
if (((nouArrayModul[posicionDNI].moduls).equals(modul))&&((modul).equals("M4"))) {
cmodul = true;
}
if (cmodul==true) {
Modul1(posicionDNI, opcio, posicio, intrAlumnes, posMod, posUF, dni, modul);
} else {
System.out.println("Aquest alumne, no esta matriculat en el modul: " +modul+"");
evaluacioModul(posicionDNI, opcio, posicio, intrAlumnes, posMod, posUF, dni, modul);
}
}
}
}
  #6 (permalink)  
Antiguo 12/04/2013, 05:20
 
Fecha de Ingreso: diciembre-2012
Mensajes: 21
Antigüedad: 11 años, 11 meses
Puntos: 0
Respuesta: Comparacion Array con palabra entrada por teclado

Creo que no me habeis entendido bien...

Tengo el array: nouArrayModul[].moduls
Que en la posicion: nouArrayModul[posicionDNI].moduls tengo estos datos almacenados separados por espacios: M1 M2 M3
Tengo que entrar un modulo por teclado, solo uno o M1 o M2 o M3 o M4 que se llamara modul.

Entonces tengo que mirar si modul esta en la posicionDNI del nouArrayModul.

Osea si M1 (entrado por teclado) esta entre M1 M2 M3 (que estan en nouArrayModul[posicionDNI].moduls.

Por lo tanto me da mal, porque M1 no es igual a M1 M2 M3, entonces me gustaria saber... que he de poner, no para que me diga si es = si no para que me diga que esa posicion del Array contiene lo que entre por teclado.
  #7 (permalink)  
Antiguo 12/04/2013, 06:00
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 15 años, 6 meses
Puntos: 306
Respuesta: Comparacion Array con palabra entrada por teclado

Es difícil seguirte

Código Javascript:
Ver original
  1. Tengo el array: nouArrayModul[].moduls

Esto no existe

Cita:
nouArrayModul[posicionDNI].moduls
Esto sí, pero significa que nouArrayModul es un array de un objeto (ni idea de cual) que tiene una propiedad llamada moduls, que se supone que es una String.

Cita:
if (((nouArrayModul[posicionDNI].moduls).equals(modul))&&(modul=="M1")) {
cmodul = true;
}
Aquí comparas el contenido de moduls con modul (que tampoco se sabe qué es) pero que supuniendo que es una String, sería correcto si moduls es igual a modul (comparado correctamente con equals), después a su vez lo comparas con M1 pero haciéndolo con == lo que está mal.

== Comparar Primitivas int,boolean,double,etc
.equals() Comparar objetos String, Integer o cualquiera que hayas creado tú la clase.

Pero es que aparte de hacer mal la comparación dices

Cita:
Que en la posicion: nouArrayModul[posicionDNI].moduls tengo estos datos almacenados separados por espacios: M1 M2 M3
Se supone entonces que moduls es "M1 M2 M3" y quieres compararlo con "M1", que evidentemente son distintos.

Da la impresión de que quieres ver si modul está contenido en moduls, no si son iguales, y para eso

http://docs.oracle.com/javase/1.5.0/...ng/String.html

te dará la solución.
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.

Etiquetas: comparacion, entrada, palabra, teclado
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:38.