1 / 27

Chapter 7 Arrays and Vectors

Chapter 7 Arrays and Vectors. Introducing Arrays Declaring Arrays, Creating Arrays, and Initializing Arrays Array of Objects Copying Arrays Multidimensional Arrays Numeric Wrapper Classes Command-Line Parameters Creating Generic Classes The Vector Class. Introducing Arrays.

sunila
Télécharger la présentation

Chapter 7 Arrays and Vectors

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Chapter 7 Arrays and Vectors • Introducing Arrays • Declaring Arrays, Creating Arrays, and Initializing Arrays • Array of Objects • Copying Arrays • Multidimensional Arrays • Numeric Wrapper Classes • Command-Line Parameters • Creating Generic Classes • The Vector Class

  2. Introducing Arrays Array is a data structure that represents a collection of the same types of data. Java treats these arrays as objects. An Array of 10 Elementsof type double double[] myList = new double[10]

  3. Declaring Arrays • datatype[] arrayname; Example: int[] myList; • datatype arrayname[]; Example: int myList[];

  4. Creating Arrays arrayName = new datatype[arraySize]; Example: myList = new double[10];

  5. Declaring and Creatingin One Step • datatype[] arrayname = new datatype[arraySize]; double[] myList = new double[10]; • datatype arrayname[] = new datatype[arraySize]; double myList[] = new double[10];

  6. Initializing Arrays • Using a loop: for (int i = 0; i < myList.length; i++) myList[i] = (double)i; • Declaring, creating, initializing in one step: double[] myList = {1.9, 2.9, 3.4, 3.5};

  7. Example 7.1Assigning Grades • Objective: read student scores (int) from the keyboard, get the best score, and then assign grades based on the following scheme: • Grade is A if score is >= best–10; • Grade is B if score is >= best–20; • Grade is C if score is >= best–30; • Grade is D if score is >= best–40; • Grade is F otherwise. AssignGrade Run

  8. Example 7.2Using Arrays in Sorting • Objective: Use the selectionSort method to write a program that will sort a list of double floating-point numbers. SelectionSort Run

  9. Example 7.3Testing Linear Search • Objective: Implement and test the linear search method by creating an array of 10 elements of int type randomly and then displaying this array. Prompt the user to enter a key for testing the linear search. LinearSearch Run

  10. Array of Objects • Declaring and creating: Circle[] circleArray = new Circle[10]; • Initializing: for (int i=0; i<circleArray.length; i++) { circleArray[i] = new Circle(); }

  11. Example 7.5Summarizing the Areas of Circles • Objective: Summarize the areas of an array of circles TotalArea Run

  12. Copying Arrays Using a loop: int[] sourceArray = {2, 3, 1, 5, 10}; int[] targetArray = new int[sourceArray.length]; for (int i = 0; i < sourceArrays.length; i++) targetArray[i] = sourceArray[i];

  13. The arraycopy Utility arraycopy(sourceArray, src_pos, targetArray, tar_pos, length); Example: System.arraycopy(sourceArray, 0, targetArray, 0, sourceArray.length);

  14. Multidimensional Arrays int[][] matrix = new int[10][10]; or int matrix[][] = new int[10][10]; for (int i=0; i<matrix.length; i++) for (int j=0; j<matrix[i].length; j++) { matrix[i][j] = (int)(Math.random()*1000); }

  15. Example 7.7Adding and Multiplying Two Matrices • Objective: Use two-dimensional arrays to create two matrices, and then add and multiple the two matrices. TestMatrixOperation Run

  16. Numeric Wrapper Classes Long Float Double • Boolean • Character • Short • Byte

  17. The Integer Classand The Double Class • Constructors • Class Constants MAX_VALUE, MIN_VALUE • Conversion Methods

  18. Command-Line Parameters class TestMain { public static void main(String[] args) { ... } } java TestMain arg0, arg1, arg2, ..., argn

  19. ProcessingCommand-Line Parameters In the main method, get the arguments from args[0], args[1], ..., args[n], which corresponds to arg0, arg1, ..., argn in the command line.

  20. Example 7.8Using Command-Line Parameters • Objective: Write a program that will perform binary operations on integers. The program receives three parameters: an operator and two integers. Run java Calculator + 2 3 Calculator Run java Calculator - 2 3 Run java Calculator / 2 3

  21. Example 7.9Designing Generic Classes • Objective: This example gives a generic class for matrix arithmetic. This class implements matrix addition and multiplication common for all types of matrices. GenericMatrix

  22. Example 7.10Extending Abstract Classes

  23. Example 7.10Extending Abstract Classes, cont. • Objective: This example gives two programs that utilize the GenericMatrix class for integer matrix arithmetic and rational matrix arithmetic. IntegerMatrix Run TestIntegerMatrix RationalMatrix TestRationalMatrix Run

  24. The Vector Class Java provides the Vector class in the java.util package, which can be used to store an unspecified number of elements. A vector can grow or shrink dynamically as needed.

  25. The Vector Class, cont. To create a vector, you can use its default constructor like this: Vector vector = new Vector(); To add an element to the vector, use the addElement method as follows: vector.addElement(anObject); The element in the vector must be an object. The element is appended to the vector.

  26. The Vector Class, cont. To retrieve an element, use the elementAt method as follows: Object anObject = vector.elementAt(0); To find the number of elements in the vector, use the size method as follows: int numOfElements = vector.size();

  27. Example 7.10 Assigning Grades Using a Vector • Objective: Rewrites Example 7.1 using a vector, instead of using an array. The program reads student scores from the keyboard, stores the score in the vector, finds the best score, and then assigns grades for all the students. AssignGradeUsingVector Run

More Related