Problema con la clase equals

Iniciado por Angel wing, 22 Octubre 2017, 23:03 PM

0 Miembros y 1 Visitante están viendo este tema.

Angel wing

Estoy intentando que al introducir un numero en un text field, me diga si es negativo o positivo, (se que hay maneras mucho mas faciles y las entiendo perfectamente, pero tengo que hacerlo así). El código que tengo es el siguiente:

   
Código (java) [Seleccionar]
   int length  = numero.length();
       char [] charsat = new char[length];
       char menos  = 45; //caracter "-" en ascii
       String menosString = String.valueOf(menos); //paso el char a string

           
          for(int c=0; c<numero.length; c++){   //guarda en un array todos los caracteres      
              charsat[c] = numero.charAt(c);
          }
         
          i[color=red]f(menosString.equals(charsat[0])){ //comprobar si el prinmer caracter es un "-"
              System.out.println("El numero es negativo");[/color]

          }else{
                  System.out.println("El numero es positivo");



He marcado lo que no funciona en rojo, no tengo ni idea de porque, he comprobado que en ese momento el charsat[0] es igual a "-" pero la clase equals no lo reconoce y me dice todo el rato que el numero es positivo.

¿Alguna sugerencia?

Un saludo.


· Los códigos deben ir en etiquetas GeSHi
>aquí las reglas del foro
-Engel Lex

Angel wing

Lo he solucionado. Lo que he hecho ha sido:


if(String.valueOf(charsat[0].equals(menosString)

Asi ya me lo reconoce, creo que me faltaba pasar el char del array a string