Week 6 - Friday What did we talk about last time? Loop examples - - PowerPoint PPT Presentation

week 6 friday what did we talk about last time loop
SMART_READER_LITE
LIVE PREVIEW

Week 6 - Friday What did we talk about last time? Loop examples - - PowerPoint PPT Presentation

Week 6 - Friday What did we talk about last time? Loop examples do-while loops I said that the do-while loop is rarely used, but certain kinds of input are well suited to a do-while For example, what about a program that gives a


slide-1
SLIDE 1

Week 6 - Friday

slide-2
SLIDE 2

 What did we talk about last time?  Loop examples  do-while loops

slide-3
SLIDE 3
slide-4
SLIDE 4
slide-5
SLIDE 5

 I said that the do-while loop is rarely used, but certain kinds

  • f input are well suited to a do-while

 For example, what about a program that gives a menu of

  • ptions

1.

Add two numbers

  • 2. Subtract two numbers

3.

Multiply two numbers

  • 4. Quit
slide-6
SLIDE 6
slide-7
SLIDE 7

 Loops are great  But, without a way to talk about a list of variables, we can't

get the full potential out of a loop

 Enter: the array

slide-8
SLIDE 8

 An array is a homogeneous, static data structure  Homogeneous means that everything in the array is the same

type: int, double, String, etc.

 Static (in this case) means that the size of the array is fixed

when you create it

slide-9
SLIDE 9

 The args variable passed into the main() method is an

array of type String

 This array has a set number of Strings (maybe zero) that

you can use as input to your program

 Now, we are giving you the ability to create and manipulate

your own arrays

slide-10
SLIDE 10
slide-11
SLIDE 11

 To declare an array of a specified type with a given

name:

 Example with a list of type int:  Just like any variable declaration, but with []

type[] name; int[] list;

slide-12
SLIDE 12

 When you declare an array, you are only creating a variable

that can hold an array

 At first, it holds nothing, also know as null  To use it, you have to create an array, supplying a specific size:  This code creates an array of 100 ints

int[] list; list = new int[100];

slide-13
SLIDE 13

 You can access an element of an array by indexing into it, using

square brackets and a number

 Once you have indexed into an array, that variable behaves

exactly like any other variable of that type

 You can read values from it and store values into it  Indexing starts at 0 and stops at 1 less than the length

list[9] = 142; System.out.println(list[9]);

slide-14
SLIDE 14

 When you instantiate an array, you specify the length  Sometimes (like in the case of args) you are given an array of

unknown length

 You can use its length member to find out int[] list = new int[42]; int size = list.length; // Prints 42 System.out.println("List has " + size + " elements");

slide-15
SLIDE 15

 When you create an int, double, char, or boolean array,

the array is automatically filled with certain values

 For other types, including Strings, each index in the array

must be filled explicitly

Type Value int double 0.0 char '\0' boolean false

slide-16
SLIDE 16

 Explicit initialization can be done with a list:  Or, a loop could be used to set all the values:

String[] days = {"Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"}; String[] numbers = new String[100]; for(int i = 0; i < numbers.length; ++i) numbers[i] = "" + (i + 1);

slide-17
SLIDE 17
slide-18
SLIDE 18

 An array takes up the size of each element times the length of

the array

 Each array starts at some point in computer memory  The index used for the array is actually an offset from that

starting point

 That's why the first element is at index 0

slide-19
SLIDE 19

 We can imagine that we have an array of type int of length

10

 Java decides what address in memory is going to be used, but

let's say it starts at 524

12 43

  • 9

6 789

  • 23

23 10 6

0 1 2 3 4 5 6 7 8 9

524 528 532 536 540 544 548 552 556 560

Addresses Indexes

slide-20
SLIDE 20
slide-21
SLIDE 21

 Arrays are a fixed size list of a single kind of data  A for loop is ideal for iterating over every item and

performing some operation

 for loops and arrays will crop up again and again  Of course, a while loop can be used with an array, but it

rarely is

slide-22
SLIDE 22

 Imagine that we have an array of ints called list  Let's use a for loop to sum up those ints  Straightforward, just like before  We don't even need to know how big the array is ahead of

time

int sum = 0; for(int i = 0; i < list.length; ++i) sum += list[i];

slide-23
SLIDE 23

 Ask the user how many words he or she wants to enter  Make an array of String values of that length  Read in all of the words and store them in the array  Print all the words back out

slide-24
SLIDE 24
slide-25
SLIDE 25

 More on arrays  Representing sound inside of a computer  StdAudio

slide-26
SLIDE 26

 Keep reading Chapter 6 of the textbook  Finish Project 2

  • Due tonight before midnight!