Question: here is my code

```
ArrayList <String> arr = new ArrayList<String>();
        arr.add("123 456");
        String []arr2 = arr.get(0).split(" ");

        char[]x=arr2[0].toCharArray();
        char[]y=arr2[1].toCharArray();

        System.out.println(x[0]);
        System.out.println(y[0]);

        int z = x[0]+y[0];
        System.out.println(z);

```

i get a result of 1 6 but the z is 103 how is that possible when

```
    char xx=1;
        char yy=6;

        int zz = xx+yy;
        System.out.println(zz);

```

results to 7

Answer: 
Why are you adding char primitives? 

If you're trying to concatenate, it works only within String objects, or between String and primitives. 

<https://docs.oracle.com/javase/tutorial/java/data/strings.html>

In case you're wondering why you get those results, char is sort of a compatible primitive with int, so they can be sum (they will return the sum of the ascii values corresponding to the characters).

<http://www.asciitable.com/>

Here you can check the values for your chars, but I don't think this is what you want to do.
I guess you mess up a bit between array, string and integers...

The main problem is `int z = x[0]+y[0];` you getting X and Y as Char, so they concate the String, so `"1" + "1" = "11"`, and than converting the string to int... so "1" + "6" = "16" converting to int, they tried to get number representation to it, that looks like be 103

What you could do if you trying to reach 7, is convert the Char to Int right here `int z = x[0]+y[0];` will be this way `int z = Integer.parseInt(x[0])+Integer.parseInt(y[0]);` so now will be `1 + 6 = 7`