I wrote a program in BlueJ that accepts a multi-line String and its job is to print that String as a single-line continuous String.
Here's the code I wrote -
    import java.util.Scanner;
    class test
    {
        public static void main() 
        {
            Scanner sc = new Scanner(System.in);
            System.out.println("Enter String: ");
            String s = sc.nextLine();
            while(sc.hasNextLine())
            {
                s+=sc.nextLine();
            }
            System.out.println(s);
        }
    }
When I run this program and give the following input by copy-pasting it into the BlueJ terminal -
10100101111011111111
00000000000000000000
01011101110110101111
the program runs infinitely and gives no output.
To check where the code was going wrong I changed it to -
    import java.util.Scanner;
    class test
    {
        public static void main() 
        {
            Scanner sc = new Scanner(System.in);
            System.out.println("Enter String: ");
            String s = sc.nextLine(), a = s;
            while(sc.hasNextLine())
            {
                System.out.println(s);
                s+=sc.nextLine();            
            }
            System.out.println(s);
        }
    }
However, the output I'm getting is -
10100101111011111111
1010010111101111111100000000000000000000
and after that the program runs infinitely without any output.
Can anyone fix my code so that it gives the proper output -
101001011110111111110000000000000000000001011101110110101111
