1 / 16

Java

Java. Arrays. Objectives. Be able to declare and initialize arrays Be able to conceptualize (draw) how arrays are represented in computer memory. Be able to process arrays (especially using for loops) Understand when to use an array. Representing Lists of Objects.

satin
Download Presentation

Java

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. Java Arrays

  2. Objectives • Be able to declare and initialize arrays • Be able to conceptualize (draw) how arrays are represented in computer memory. • Be able to process arrays (especially using for loops) • Understand when to use an array

  3. Representing Lists of Objects • Frequently, applications must store lists of objects of the same type. • Variables represent one object at a time so a list would require separate variables: String country1, country2, country3; int population1, population2, population3; • We can represent lists of objects using arrays.

  4. Array Definition Pattern ElementType[] arrayName; or ElementType[] arrayName = new ElementType[length]; or ElementType[] arrayName = arrayInitializer; • ElementType is any type (including an array type); • arrayName is the handle for the array object being defined – if there is no assignment clause in the statement, the handle is set to null; • length is an expression specifying the number of elements in the array; • arrayInitializer is a list of literals of type ElementType, enclosed in curly braces ({}).

  5. array1 array2 [0] [1] [2] [3] ? ? ? ? array3 [0] [1] “Bashful” “Doc” Array Definitions double[] array1; final int SIZE = 4; int[] array2 = new int[SIZE]; String[] array3 = { "Bashful", "Doc" };

  6. anArray [0] [1] “Grumpy” “Happy” Array Subscripts String[] anArray = new String[2]; anArray[0] = "Grumpy"; anArray[1] = "Happy"; println(anArray[1]);

  7. anArray [0] [1] “Grumpy” “Happy” Working with Arrays String[] anArray = new String[2]; anArray[0] = "Grumpy"; anArray[1] = "Happy"; for (inti = 0; i < anArray.length; i++) { println(anArray[i]); }

  8. Example: Population by Country String[] countries = { "Belize", "Costa Rica", "El Salvador", "Guatemala", "Honduras", "Nicaragua", "Panama" }; int[] populations = { 294385, 4133884, 6948073, 12728111, 7483763, 5675356, 3242173 }; for (inti = 0; i < countries.length; i++) { println(countries[i] + ": " + populations[i]); }

  9. Arrays as Parameters public static intcomputeTotal(int[] values) { int result = 0; for (inti = 0; i < values.length; i++) { result += values[i]; } return result; }

  10. Reference Values as Parameters public static void main(String[] args) { String[] sa = {"Grumpy", "Happy"}; changeStringArray(sa); System.out.println(sa[0] + ” ” + sa[1]); } public static void changeStringArray (String[] stringArray) { sa[0] = "Dopey"; sa[1] = "Sleepy"; System.out.println(sa[0] + ” ” + sa[1]); }

  11. Ref. Values as Parameters (corrected) public static void main(String[] args) { String[] sa = {"Grumpy", "Happy"}; changeStringArray(sa); System.out.println(sa[0] + ” ” + sa[1]); } public static void changeStringArray (String[] sA1) { sA1[0] = "Dopey"; sA1[1] = "Sleepy"; System.out.println(sA1[0] + ” ” + sA1[1]); }

  12. Exercises

  13. Search Linear Search: • Receive a non-null list of values and a target value. • Loop for each element in list • If value equals list[i] then • Return true • Return false.

  14. Binary Search • Receive a non-null, sorted list of values and a target value. • If list is null • Return -1. • Set first = 0 and last = length of the list - 1. • Loop while first <= last • Set middle to the integer quotient (first + last) / 2. • If value < list[middle] then • Set last = middle – 1; • else if value > list[middle] then • Set first = middle + 1; • else • Return middle; • Return -1.

  15. Multi-Dimensional Data • Some data sets cannot be represented with single-dimensional arrays. • Examples: • Matrixes, sudoku puzzles, tictactoe games, chess, checkers, etc. • Spreadsheets are generally two dimensional. • Databases are generally X dimensional where X > 2.

  16. Multi-Dimensional Arrays • Some data collections, like the Sudoku grid can be viewed as multi-dimensional data. • Declaring 2-D arrays: type[][] identifier = arrayExpression; • Constructing 2-D arrays: new type[totalRows][totalColumns] • Accessing 2-D array elements: identifier[someRow][someColumn] • This can be generalized to more dimensions.

More Related