/* * [TestArraycopy.java] * * Summary: Methods to demonstrate the various ways of copying an array. * * Copyright: (c) 2009-2017 Roedy Green, Canadian Mind Products, http://mindprod.com * * Licence: This software may be copied and used freely for any purpose but military. * http://mindprod.com/contact/nonmil.html * * Requires: JDK 1.8+ * * Created with: JetBrains IntelliJ IDEA IDE http://www.jetbrains.com/idea/ * * Version History: * 1.0 2006-03-24 */package com.mindprod.example;import java.util.Arrays;import static java.lang.System.*;/** * Methods to demonstrate the various ways of copying an array. * <p/> * * @author Roedy Green, Canadian Mind Products * @version 1.0 2006-03-24 * @noinspection WeakerAccess * @since 2006-03-24 */public final class TestArraycopy{/** * Sample code to copy arrays four different ways. * * @param args not used. * * @noinspection ManualArrayCopy */public static void main(String[]args ){// create an array of 9 Stringsfinal String[]planets = {"Mercury","Venus","Earth","Mars","Jupiter","Saturn","Uranus","Neptune","Pluto"};// manual copyString[]planets1 = new String[planets.length ];for (int i = 0; i < planets.length; i++ ){planets1[i ]= planets[i ];}// display result to make sure item workedout.println(">>>planets1");for (String planet : planets1 ){out.println(planet );}// Copy using System.arrayCopyString[]planets2 = new String[planets.length ];System.arraycopy(planets, 0, planets2, 0, planets.length );// display result to make sure item workedout.println(">>>planets2");for (String planet : planets2 ){out.println(planet );}// copy with Arrays.copyOf, JDK 1.8+ onlyString[]planets3 = Arrays.copyOf(planets, planets.length );// display result to make sure item workedout.println(">>>planets3");for (String planet : planets3 ){out.println(planet );}// copy with Arrays.copyRangeOf, JDK 1.8+ onlyString[]planets4 = Arrays.copyOfRange(planets, 0/* from */, planets.length/* to+1 */ );// display result to make sure item workedout.println(">>>planets4");for (String planet : planets4 ){out.println(planet );}}}