Lab 4 - Honey, I Shrunk the Array Name(s): Date: Lab 4 - Honey, I Shrunk the Array Algorithms & Data Structures II CSC 1052 Dr. Tom Way Introduction This lab is designed to develop your skills working with collection interfaces, arrays, strings, and character values. You should do this lab independently, though it's ok to discuss it with classmates as long as you aren't copying each other's work. When completed, submit your results to Blackboard for this specific assignment as described below. Objectives Practice with collection interface concepts. Practice using an encapsulated array and resizing an array. Practice working with strings and character values. Worth 100 points Due Tuesday, September 21, 2021 by 11:59 pm Lab Steps Part A - Resizing Array (70 points) This part of the lab will give you experience using interfaces, inheritance, and arrays. You will implement your own version of the Java List class. In Eclipse, create a new Java project entitled -lab4. For example, tway-lab4. Download the files IntegerArray.java, ArrayTester.java, and ResizingIntegerArray.java, and drag them into the default package of your Lab 4 project. Examine the IntegerArray interface and note how it's methods are contained in ResizingIntegerArray. Complete the implementations of the ResizingIntegerArray class as described in the comments. Refer to the Rephactor Interfaces, Arrays of Objects, and Lists topic for potentially helpful background information. Your experience manipulating arrays in Lab 2 will prove to be invaluable. Test your implementation by running the ArrayTester program, comparing expected and actual output, and revising your program until the results appear to be correct. Part B - Adding Huge Numbers (30 points) In this part of the lab, you will develop a program that adds to arbitrarily large numbers. The Big Numbers topic in Rephactor will provide context, as you will be creating your own version of the add functionality Java's various Big Number classes provide. This means that you cannot use Java's support for Big Numbers, like the BigInteger or BigDecimal classes. The Strings, Wrapper Classes, and Unicode topics may provide ideas for getting and converting specific characters representing a numeric digits into their integer values. Inside the same project you created in Part A, download HugeNumberAdder.java and drag it into the src directory in Eclipse. Implement the add method in HugeNumberAdder and, if you like, add more tests to the main method. Run the HugeNumberAdder and observe the results, comparing actual output with expected output. Run, modify your code, and run again until you are satisfied that the output is correct. Lab Submission When you have completed this lab, find the Lab 4 assignment on Blackboard and submit one thing: Zip Archive: A zip archive of your project using the same name as the project for the zip archive (e.g., tway-lab4.zip). See the online article How to Use Eclipse IDE to Export Project Based on Java, which is also linked from our class Resources page. Evaluation: Part A (70 points) - Name, formatting, comments, growing/shrinking of array size, correct implementation of methods, correct output Part B (30 points) - Name, formatting, comments, correct implementation of add method, handles different length numbers, correct result