Foro de elhacker.net

Programación => Java => Mensaje iniciado por: Angel wing en 22 Octubre 2017, 23:03 pm



Título: Problema con la clase equals
Publicado por: Angel wing en 22 Octubre 2017, 23:03 pm
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
  1.   int length  = numero.length();
  2.        char [] charsat = new char[length];
  3.        char menos  = 45; //caracter "-" en ascii
  4.        String menosString = String.valueOf(menos); //paso el char a string
  5.  
  6.  
  7.           for(int c=0; c<numero.length; c++){   //guarda en un array todos los caracteres      
  8.               charsat[c] = numero.charAt(c);
  9.           }
  10.  
  11.           i[color=red]f(menosString.equals(charsat[0])){ //comprobar si el prinmer caracter es un "-"
  12.               System.out.println("El numero es negativo");[/color]
  13.  
  14.           }else{
  15.                   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 (http://foro.elhacker.net/reglas.htm)
-Engel Lex


Título: Re: Problema con la clase equals
Publicado por: Angel wing en 22 Octubre 2017, 23:12 pm
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