You could use snprintf() to concatenate the text and value in a text buffer then print that or if the second value is a string (lowercase s) concatenate the two using strcat() but why bother ?
If you dont want the linebreak, do print instead of println.
But yeah - dont build a string then print it in arduino, if you can avoid it - just use successive prints. Building thf string is more work, and requires more memory because you need to store the string you are building. What is good practice when you have gigabytes of ram isnt so great when you have kilobytes of ram.
template <typename T>
Print& operator<<(Print& printer, T value)
{
printer.print(value);
return printer;
}
void setup()
{
Serial.begin(9600);
int num = 123456;
Serial << "My variable's number is: " << num << '\n';
}
Note that the IDE fails to automatically build a function prototype for functions with default parameters so the function definition has to precede where it is called