in reply to arrays and dot operator

It's not a newline problem. In your second section, the line print @new_array . "\n" has @new_array in scalar context, because the string concatenation operator (.) puts its arguments in scalar context. The line is actually executed as print scalar(@new_array) . "\n". In scalar context, you get the array length, which is 5 in this case.

If you want to print a newline after the array, just use a comma:

print @new_array, "\n";

Replies are listed 'Best First'.
Re^2: arrays and dot operator
by BillKSmith (Monsignor) on Apr 05, 2017 at 14:59 UTC
    Or use:
    #print "@array,\n"; print "@array\n";

    This will print the array elements separated by the contents of $" (space by default), followed by the newline.

    Update: Removed comma as indicated by vrk

    Bill

      You have an extra comma there.