CS1335
  • Introduction
  • Assignments
    • A1: Meta, Metta
    • A2: Functions, Emotions
    • A3: Repeat Patterns
    • A4 - Objects: Things and No Thing
    • Final Inspirations
    • A?: Grid Patterns
    • Inspiration
  • Getting Started
    • Processing
    • PDE - Code Editor
    • Learning Processing
  • Java Language
    • Java Syntax
      • Typed-Variables
      • Float - Integer Conversion Errors
      • Modulus
      • Functions
      • Object Reference Data Types
      • Arrays
        • Class Example Code
      • Switch-Case Statement
      • Ternary Operator
      • Class
  • Project 1
    • Random Variation
    • Noise
    • HSB Color Mode
      • HSB Color Wheel
        • Dynamic ColorWheel
        • HSB Color Palette Tool
    • PShape Objects
      • Example Code: PShape
        • Inspiration
    • Modeling Emotions
      • Emotions
        • Kandinsky Color - Emotion
    • PShape with Contour
    • Recursion
      • Recursion Call-Stack
      • Recursion Examples
        • Example Code 1
        • Example Code 2
    • Recursion - PShape
    • Recursive Patterns
    • Planning Structure: Functions:
      • Example Code - Feb 19
      • Final Code Structure
    • Project 1: Programmatic Variations in Color
      • LerpColor
      • Map Function
      • Map with LerpColor
      • noise( )
    • Transforms for Mirroring
    • Project 1-Steps
  • Grid Based Designs
    • Computational Design
    • Artist: Victor Vasarely
    • Grid Pattern Design
    • 1D - Array of PShapes for Grid Layout
      • Truchet Tiling
      • Example Code S2020
      • Example Code March 11
      • Example - March9
      • Example Code
    • PShapes in Grid Regions
    • Grid Region Logic
    • Pattern Preview - Transforms: Translate & Scale
  • Project 2
    • Project 2 - 2D Arrays for Gradient Logic
      • 2D Array Grid with Labels
    • Grid Patterns using 2D Array Indexes: i, j
      • Example Class Code
    • lerpColor( ) and map( ) Functions
    • Demo Lerp Colors
    • 2D Arrays with lerpColor
    • Create PShape 2D Array
    • Function: Populate2DArray( )
    • Function: DisplayShapeMatrix()
    • Transforms for Position, Rotation, Scale of ShapeMatrix Elements
    • Project 2 - Steps
    • Animation for ShapeMatrix
      • Animation w/Noise
  • Object Oriented Programming
    • Introduction to Objects
    • Button States
    • Buttons as Objects
      • Button Class
    • Create Object Instances
    • Button Types
    • Modeling Buttons: States and Events
    • OOP - Inheritance
    • OOP - Polymorphism
    • Child-Class: PImageButton
    • PShape - SVG Objects
    • Menu of Buttons
    • ButtonGroup - Final Version
    • Slider Controller
    • UML Class Diagram
  • Project 3
    • Project 3 - Logic, Steps
    • Project 3 - Class Definitions
      • Button
      • PImageButton
      • ButtonGroup
      • Pattern
        • PShapes - SVG, Vertex Shapes
        • Setting Colors For Patterns
        • Pattern - With Child-PShapes
      • Slider
      • Particles
  • Modeling
    • UML Class Diagram
  • Resources and References
    • Glossary
    • Resources
      • Acoustics
      • Learning Science
        • Emotional Intelligence
      • Creativity
      • Conceptual Art
      • Books
        • Art
      • Games, Rules
      • Complexity
    • Random Inspiration
      • Ulm School
      • Heart-Mind, Mind, Body
      • Statistical Uncertainty
Powered by GitBook
On this page

Was this helpful?

  1. Java Language
  2. Java Syntax
  3. Arrays

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;
}
PreviousArraysNextSwitch-Case Statement

Last updated 5 years ago

Was this helpful?