tengo problemas con este codigo. Tendria que hacer el login, pero cuando ingreso la cadena de nombre usuario o usuario no identifica el objeto al que hago referencian y el if me regresa un false. Pienso que hay algun problema con el constructor adjunto ambos codigos.
public class usuario { static String nombre; static String tipo; static String pass; public usuario(String nombre_, String tipo_,String pass_) { this.nombre=nombre_; this.tipo=tipo_; this.pass=pass_; } public String getNombre() { return this.nombre; } public String getTipo() { return this.tipo; } public String getPass() { return this.pass; } }
Y lo intento llamar desde esta otra clase
import javax.swing.*; import java.util.ArrayList; class principal { public static void main(String[] args) { String login; usuario[] bd_usuario=new usuario[3]; JPasswordField jpf = new JPasswordField(); JLabel titulo = new JLabel ("Ingrese su password"); bd_usuario[0]=new usuario("Javier","admin","12345"); bd_usuario[1]=new usuario("fernando","usuario",""); bd_usuario[2]=new usuario("juan","usuario",""); String usr; int option; usr=JOptionPane.showInputDialog(null,"ELIGA UNA OPCION\n\t1.-Iniciar sesion ADMINISTRADOR\n\t2.-Iniciar sesion USUARIO",JOptionPane.INFORMATION_MESSAGE); option=Integer.parseInt(usr); if (option==1) { int cs; String name; //String contra name=JOptionPane.showInputDialog(null,"Ingresa tu USUARIO"); JOptionPane.showConfirmDialog (null, new Object[]{titulo, jpf}, "Inicio de sesion", JOptionPane.OK_CANCEL_OPTION); char p[] = jpf.getPassword(); String contra= new String(p); for(cs=0;cs<3;cs++){ if(name==bd_usuario[cs].getNombre() /*&& contra==bd_usuario[cs].getPass()*/){ m=v1.menu1(); while(m>=1 && m<=7) { //demas funciones