Además de Java Char no tiene sentido (para mí)

John Andreas:

Así que tengo el código aquí:

char a = '1';
char b = '2';
System.out.println(a+b); \\ Outputs 99

Quiero saber por qué, ya que este código:

char a = '1' + '2';

    System.out.println(a); \\ Outputs c

Quiero mejorar mi mente primitiva, por favor ayuda a un alma gemela.

blurfus:

Ellos están siendo añadidos como su valor ASCII numérico decimal.

La parte del código que hace a+bimplícitamente les está añadiendo como enteros. Por lo tanto, si ejecuta el siguiente código:

class Example {
    public static void main(String[] args) {
        char ch = '1';
        char ch2 = '2';
        int num = ch;
        int num2 = ch2;
        System.out.println("ASCII value of char " + ch + " is: " + num);
        System.out.println("ASCII value of char " + ch2 + " is: " + num2);
    }
}

Se verá que la salida de cada char es

valor ASCII de carbón 1 es: 49

valor ASCII de Char 2 es: 50

Así que cuando usted hace esto System.out.println(a+b);que se añaden como su valor entero que resulta ser 99

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=341739&siteId=1
Recomendado
Clasificación