1 / 12

Introduction to Random Numbers, Simulations, Debugging, Arrays, and Array Lists

This text introduces the concepts of random numbers and simulations, using a debugger to analyze program behavior, working with arrays, and utilizing array lists for dynamic collections.

jcoronado
Download Presentation

Introduction to Random Numbers, Simulations, Debugging, Arrays, and Array Lists

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. Week 9 Introduction to Computer Science and Object-Oriented Programming COMP 111 George Basham

  2. Week 9 Topics 9.1.1 Random Numbers and Simulations 9.1.2 Using a Debugger 9.2.1 Arrays 9.2.2 Array Lists

  3. 9.1.1 Random Numbers and Simulations • In a simulation, you repeatedly generate random numbers and use them to simulate an activity. • The basic approach of a simulation is to have a loop, generate a large number of sample values, and record these values. When completed, averages or other statistics are calculated. • See the Buffon needle experiment for an example.

  4. 9.1.1 Random Numbers and Simulations Cont. • Here is how to simulate the cast of a die: • Random generator = new Random(); • int d = 1 + generator.nextInt(6); • The call generator.nextInt(6) gives you a random number between 0 and 5 (inclusive). Add 1 to obtain a number between 1 and 6. • import java.util.Random; • nextInt(n) – a random integer between 0 (inclusive) and n (exclusive) • nextDouble() – a random floating-point number between 0 (inclusive) and 1 (exclusive)

  5. 9.1.2 Using a Debugger • A debugger is a program that you can use to execute another program and analyze its run-time behavior • You can make effective use of a debugger by mastering just three concepts: breakpoints, single-stepping, and inspecting variables

  6. 9.1.2 Using a Debugger Cont. • When a debugger executes a program, the execution is suspended whenever a breakpoint is reached • The single-step command executes the program one step at a time • You should step into a method to check if carries out its job correctly, you should step over it if you know it works correctly

  7. 9.2.1 Arrays • An array is a sequence of values of the same type. Arrays can be very useful, but suffer from the limitation that their length is fixed. • double[] data = new double[10]; • for (i = 0; i < data.length; ++i) data[i] = i * 10; data[0] value is 0, data[1] is 10, data[2] is 20, data[3] is 30 … data[9] is 90

  8. 9.2.1 Arrays Cont. • Representation of the array data from the previous slide: Value Subscript

  9. 9.2.2 Array Lists • ArrayList is a collection class. • Array lists can grow and shrink as needed. • The ArrayList class provides methods for many common tasks. • ArrayList<BankAccount> accounts = new ArrayList<BankAccounts>(); accounts.add(new BankAccount(1001));

  10. 9.2.2 Array Lists Cont. • BankAccount anAccount = accounts.get(2); • BankAccount anAccount = new BankAccount(1729); • accounts.set(2, anAccount); • accounts.remove(0); • System.out.println(accounts.size());

  11. 9.2.2 Array Lists Cont. • Note, don’t try to access an element of an array or an array list that does not exist, or you will get an out-of-bounds exception and the program will be terminated! • For example, this will generate an out-of-bounds exception: • BankAccount anAccount = accounts.get(accounts.size()); • Error since accounts.size() – 1 is the last valid element of the array list

  12. Reference: Big Java 4th Edition by Cay Horstmann 9.1.1 Random Numbers and Simulations (section 6.5 in Big Java) 9.1.2 Using a Debugger (section 6.6 in Big Java) 9.2.1 Arrays (section 7.1 in Big Java) 9.2.2 Array Lists (section 7.2 in Big Java)

More Related