Class Example Code
Here is some example code similar to what was done in class.
//Example Class Code
//Arrays: Declare, Initialize array, initialize array elements
//Object reference variables -null, or contain a valid memory address to object data in the heap
//Functions: primitive vs object input parameters, return values
//Random - for coin flip logic
void setup(){
int num=5;
int result = DoSomething( num ); //using the value returned from a function
//copy of num variable's value ( 5 ) passed into the function
//num variable not changed by function call
println("num, result " + num + " , " + result);
int[] myArray; //Declare the array - has a value of null
int[] myArray2; //Declare another array - has a value of null
myArray = new int[ 20 ]; //initialize the array - now variable contains valid memory address
myArray2 = myArray; //2nd object reference variable pointing to same memory location
myArray[0] = 10; //initialize first element using bracket notation
myArray2[0] = 15; //change value using other object reference variable
println( "Array value changed " + myArray[0]);
//Use a loop to initialize the elements of the array
for ( int i=0; i < myArray.length; i++){
myArray[i] = (int) random(0,2); //flip a coin
println("random value myArray[i] " + myArray[i]);
}
DoSomething(myArray[0]); //input parmater is an int, pass in a copy of the value
println( "initial Array value " + myArray[0]);
//Function input value is the memory address of the array
//so changes to the array in the function are persisted
//to the array after the function is done executing
DoArraySomething( myArray );
println("after function myArray[0] " + myArray[0]); //first array element value was permanently changed in the function call
} //end setup
//Function that takes an array as an input parameter
void DoArraySomething( int[] list ){ //input parameter is the memory address of the object
list[0] = 10; //actually changes value in the original array
}
//Function that has an integer input parameter
int DoSomething( int val ){ //val is a local variable
val = val + 10; //changing the value of local variable does not change the original variable used in the function call
println("val " + val);
return val;
}
Last updated