Machine-translated by Google. Questions are authored in English.
Top

Discussion

What will be the output of the program?

import java.util.*;

public class Program30
{
    public static void main(String[] args)
    {
        List<String> l = Collections.nCopies(3, "a");
        System.out.println(l + " " + l.size());
    }
}

  • A.The program prints [a] 1
  • B.The program prints [a, a, a] 3
  • C.The program prints [a, a, a] 1
  • D.Compilation fails.

Answer: B

nCopies returns an immutable list containing the same reference the requested number of times, so it prints [a, a, a] with a size of 3. The list is a compact view rather than a real array of three slots, and attempting to modify it throws UnsupportedOperationException.

No comment is present. Be the first to comment.
Loading…

Post your comment

Please log in or register to post a comment.