| // Copyright (c) 2022, the R8 project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| package collectiontoarray; |
| |
| import java.util.ArrayList; |
| import java.util.Arrays; |
| import java.util.List; |
| import java.util.function.IntFunction; |
| |
| public class Main { |
| public static void main(String[] args) { |
| List<String> list = new ArrayList<>(); |
| list.add("one"); |
| list.add("two"); |
| // This default method was added in Android T. |
| String[] toArray = list.toArray(String[]::new); |
| System.out.println(Arrays.toString(toArray)); |
| |
| List<String> myList = new MyList<>(); |
| myList.add("one"); |
| myList.add("two"); |
| // This default method was added in Android T. |
| String[] toArray2 = myList.toArray(String[]::new); |
| System.out.println(Arrays.toString(toArray2)); |
| } |
| |
| @SuppressWarnings("all") |
| public static class MyList<T> extends ArrayList<T> { |
| public <T> T[] toArray(IntFunction<T[]> generator) { |
| System.out.println("Override"); |
| return super.toArray(generator); |
| } |
| } |
| } |