user2650243 user2650243 - 1 year ago 47
Java Question

Java printing a string containing multiple integers

Just starting learning java today and can't seem to figure this out. I am following the tutorial on which teaches you a few things and then asks you to write a code to do a specific thing, it then checks the output to see if its correct. The thing is, if its not correct, it doesn't say why, or give you an example of the correct code.

It wants me to output a string saying "H3110 w0r1d 2.0 true" using all of the primitives

i came up with this

public class Main {
public static void main(String[] args) {
char h = 'H';
byte three = 3;
short one = 1;
boolean t = true;
double ten = 10;
float two = (float) 2.0;
long won = 1;
int zero = 0;

String output = h + three + one + ten + " " + "w" + zero + "r" + won + "d " + two + " " + t;


but it outputs
86.0 w0r1d 2.0 true

how can i make it so it doesn't add all the integers, but displays them consecutively?

Answer Source

You can either convert your numbers into a string using the toString or valueOf methods of the wrapper classes (guess you are not there yet), or just stuff all your primitives into the printline without the String output.

system.out.println(h + three + one + ten + " " + "w" + zero + "r" + won + "d " + two + " " + t);

All you need to look for is that there is a String in the printline statement. Meaning if you only want to print our number based datatype you can use system.out.println("" + youNumberVariable).

There would also be the option to add an empty string at the beginning of your declaration of output output = "" + theRest; to force all following values into the string like it does in the printline statement.

Most of it is not very pretty coding but will completly suffice for the learning process.