300 likes | 307 Vues
Variables. Pepper. Variable . A variable box holds a certain type of value value inside the box can change Example A = 2B+1 Slope = change in y / change in x monopoly square – holds different monopoly pieces. Data types. type : A category or set of data values.
E N D
Variables Pepper
Variable • A variable • box • holds a certain type of value • value inside the box can change • Example • A = 2B+1 • Slope = change in y / change in x • monopoly square – holds different monopoly pieces
Data types • type: A category or set of data values. • Examples: integer, real number, string. • Internally, the computer stores all data as 0s and 1s. • examples: 42 101010"hi" 0110100001101001
Java's primitive types • primitive types: Java's built-in simple data types for numbers, text characters, and logic. • Java has eight primitive types. • Types that are not primitive are called object types. • Four primitive types we will use: Name Description Examples • int integers (whole numbers) 42, -3, 0, 926394 • double real numbers 3.14, -0.25, 9.4e3 • char single text characters 'a', 'X', '?', '\n' • boolean logical values true, false
Create a variable • create a variable • In Java: <type> <variable name> ; example: int myIntVar; • declare with correct type: int, double, char, boolean, (not capitalized) • declare Object variables with types such as : String, Scanner, Random, (capitalized) • You try: • Create a program that creates the following variables: • int myQuantity • double myDollars • boolean answer • char oneLetter • String myName
Change a variable • change variable contents: • In Java: <variable name> = <some expression>; example: myIntVar = 5 ;. • Equal sign means set equal to • Left side gets put into right side • You try – set those variables = to something • myQuantity = 1 • myDollars = 3.3 • answer = true • oneLetter = ‘a’ • myName = “pepper” • Now, print those variables with: • System.out.println(myQuantity + myDollars + answer + oneLetter + myName) • What happens when you put single or double quotes where there were none, or take away the quotes?
Use variables in a real program • On Paper: Average 2 + 4 + 6 • Pay attention to your steps
Writing the Average program Specification – write a program which can find the average of three numbers. Let’s list the steps that our program must perform to do this: • Add up these values • Divide the sum by the number of values • Print the result Each of these steps will be a different statement.
Flow chart • Done in Gliffy • https://www.gliffy.com/ • Show how
Writing the Average program • Add up these values • Divide the sum by the number of values • Print the result sum = 2 + 4 + 6; an assignment statement sum = 2 + 4 + 6;
Assignment Statements • Assignment statements take the form: variable=expression Memory location where the value is stored Combination of constants and variables
Expressions • Expressions combine values using one of several operations. • The operations being used is indicated by the operator: + Addition - Subtraction * Multiplication / Division Examples: • + 5 • 4 * value x / y
Writing the Average program 1 • sum = 2 + 4 + 6; • Divide the sum by the number of values • Print the result average = sum / 3; Names that describe what the values represent
Writing the Average program 2 • sum = 2 + 4 + 6 • average = sum / 3; • Print the result System.out.println(″The average is ″ + average); The output method variable name
Writing the Average program 3 public static void main(String[] args) { -------------------- sum = 2 + 4 + 6; average = sum / 3; System.out.println("The average is " + average); } We still need to add a declare our variables. This tells the computer what they are.
Writing the Average program 4 public class Average3 { public static void main(String[] args) { int sum, average; sum = 2 + 4 + 6; average = sum / 3; System.out.println("The average is " + average); } } Tells the computer that sum and average are integers
Writing the Average program 5 public class Average3a { public static void main(String[] args) { int sum; int average; sum = 2 + 4 + 6; average = sum / 3; System.out.println("The average is " + average); } } We could also write this as two separate declarations.
You try • Add 1 to the average and then print it again. average = average + 1
Variables and Identifiers • Variables have names – we call these names identifiers. • Identifiers identify various elements of a program (so far the only such element are the variables. • Some identifiers are standard (such as System)
Identifier Rules • An identifier must begin with a letter or an underscore _ • Java is case sensitive upper case (capital) or lower case letters are considered different characters. Average, average and AVERAGE are three different identifiers. • Numbers can also appear after the first character. • Identifiers can be as long as you want but names that are too long usually are too cumbersome. • Identifiers cannot be reserved words (special words like int, main, etc.)
Spelling Conventions • Name constants • Variables start lower case • Classes uppercase • Word boundaries upper case (numberOfPods)
IllegalIdentifier Reason Suggested Identifier my age Blanks are not allowed myAge 2times Cannot begin with a number times2 or twoTimes four*five * is not allowed fourTimesFive time&ahalf & is not allowed timeAndAHalf Some Illegal Identifiers
Assignment int number1 = 33; double number2; number2 = number1; byteshortintlongfloatdouble char
Dividing • int / int int (even if you assign it to a double) • float / int float • int / float float Solution: Cast it ans = n / (double) m
Math Operators & PEMDAS • + add • - subtract • * multiply • - division • % remainder Example: base + (rate * hours)
Fancy Math variable = variable op (expression) count = count + 1 count = count + (6 / 2 * a + 3) variable op = expression count += 1 count += (6 / 2 * a + 3) Example: int count = 1; count += 2; The value of count is now 3
More Fancy Math • Increment ++ • Decrment – • ++n adds 1 before executing • n++ adds 1 after executing Example:
Constants Constant doesn’t change Why use a variable if massive changes later show meaning avoid Hard coding public static final int MAX_PEOPLE = 20; Capitalize by convention only
Summary • A variable holds one value • Variables have certain types • Literals of different types are entered differently (i.e. quotes for String) • The system keeps variable values until you change them. • Constants are a special kind of variable – no changing