lecture 3 mit 12043, fundamentals of programming … · boolean expressions int a = 3; b = 4; a ==...
TRANSCRIPT
![Page 1: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/1.jpg)
Decision Structures
Lecture 3
MIT 12043, Fundamentals of Programming
By: S. Sabraz Nawaz
![Page 2: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/2.jpg)
3-2
Chapter Topics
o Relational Operators
o The if Statement
o The if-else Statement
o The if-else-if Statement
o Nested if statements
o The switch Statement
MIT 12043, By S. Sabraz Nawaz
![Page 3: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/3.jpg)
Relational Operators
• Relational operators in Java are used to compare two variables.
• Java provides six relational operators:
• The result of any relational operator is “true” or “false”
Equal ==Greater than >Less than <Greater than or equal to >=
Less than or equal to <=
Unequal !=
MIT 12043, By S. Sabraz Nawaz 3
![Page 4: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/4.jpg)
Boolean Expressions
int a = 3; b = 4;
a == b will evaluate to false
a != b will evaluate to true
a > b will evaluate to false
a < b will evaluate to true
a >= b will evaluate to false
a <= b will evaluate to true
MIT 12043, By S. Sabraz Nawaz 4
![Page 5: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/5.jpg)
Sequence Structure
MIT 12043, By S. Sabraz Nawaz 5
![Page 6: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/6.jpg)
Decision Structure
• Programs often need more than one path of execution
• Many algorithms require a program to execute some
statements only under certain circumstances. This can be
accomplished with a decision structure
• In a decision structure’s simplest form, a specific action is
taken only when a condition exists
• If the condition does not exist, the action is not performed
MIT 12043, By S. Sabraz Nawaz 6
![Page 7: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/7.jpg)
Decision Structure…
• Simple decision structure logic
MIT 12043, By S. Sabraz Nawaz 7
![Page 8: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/8.jpg)
Decision Structure…
• Three-action decision structure logic
MIT 12043, By S. Sabraz Nawaz 8
![Page 9: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/9.jpg)
Selection Statements
• The control statement that allows alternative actions
based upon conditions that are evaluated at run time are
generally called selection statements
• One way to code a decision structure in Java is with the
if statement
MIT 12043, By S. Sabraz Nawaz 9
![Page 10: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/10.jpg)
3-10
The if Statement
• The if statement is used to create a decision structure, which
allows a program to have more than one path of execution
o The if statement causes one or more statements to execute only when a boolean
expression is true.
• The if statement decides whether a section executes or not
if (boolean expression is true)
execute this statement;
MIT 12043, By S. Sabraz Nawaz
![Page 11: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/11.jpg)
3-11
The if Statement…
• A block if statement may be modeled as:
if (coldOutside)
{
wearCoat;
wearHat;
wearGloves;
}
Note the use of curly
braces to block several
statements together.
MIT 12043, By S. Sabraz Nawaz
![Page 12: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/12.jpg)
3-12
if Statements and Boolean Expressions
if (x > y)System.out.println("X is greater than Y");
if(x == y)System.out.println("X is equal to Y");
if(x != y)
{System.out.println("X is not equal to Y");
x = y;
System.out.println("However, now it is.");
}
MIT 12043, By S. Sabraz Nawaz
![Page 13: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/13.jpg)
3-13
Programming Style and if Statements
• An if statement can span more than one line; however, it is still
one statement.
if (average > 85)
grade = ′A′;
is functionally equivalent to
if(average > 95) grade = ′A′;
MIT 12043, By S. Sabraz Nawaz
![Page 14: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/14.jpg)
3-14
Block if Statements
• Conditionally executed statements can be grouped into a block by using curly braces {} to enclose them.
• If curly braces are used to group conditionally executed statements, the if statement is ended by the closing curly brace.if (expression)
{
statement1;
statement2;
}Curly brace ends the statement.
MIT 12043, By S. Sabraz Nawaz
![Page 15: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/15.jpg)
3-15
Block if Statements
• Remember that when the curly braces are not used, then only the next statement after the if condition will be executed conditionally
if (expression)
statement1;
statement2;
statement3;
Only this statement is conditionally executed.
MIT 12043, By S. Sabraz Nawaz
![Page 16: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/16.jpg)
Example 01
• Write a Java program that takes a person’s age as input and
decides whether that person is eligible to vote
• If the person’s age is above 18, he or she is eligible to vote
• The program should display a message whether he or she is
eligible to vote
MIT 12043, By S. Sabraz Nawaz 16
![Page 17: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/17.jpg)
Example 01…
MIT 12043, By S. Sabraz Nawaz 17
![Page 18: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/18.jpg)
Example 02
• Write a Java program that takes a person’s age and his or her
name as inputs and decides whether that person is eligible to
vote
• If the person’s age is above 18, he or she is eligible to vote
• The program should display a message with the Name of the
person and his or eligibility to vote
MIT 12043, By S. Sabraz Nawaz 18
![Page 19: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/19.jpg)
Example 02
MIT 12043, By S. Sabraz Nawaz 19
![Page 20: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/20.jpg)
3-20
if-else Statements
• The if-else statement adds the ability to conditionally
execute code when the if condition is false.
if (expression)
statementOrBlockIfTrue;
else
statementOrBlockIfFalse;
• It works the same way as the if statement except that, when the
condition is false, the statement within the else clause executes
MIT 12043, By S. Sabraz Nawaz
![Page 21: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/21.jpg)
3-21
if-else Statement Flowcharts
Wear a coat.
YesIs it cold
outside?
Wear t-Shirt
No
MIT 12043, By S. Sabraz Nawaz
![Page 22: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/22.jpg)
Example 03
• Write a Java program that takes a person’s age and his or her
name as inputs and decides whether that person is eligible to
vote or not
• If the person’s age is above 18, he or she is eligible to vote
• The program should display a message with the Name of the
person and his or eligibility to vote
MIT 12043, By S. Sabraz Nawaz 22
![Page 23: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/23.jpg)
Example 03…
MIT 12043, By S. Sabraz Nawaz 23
![Page 24: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/24.jpg)
Exercise
• A company’s payment structure to its employees is as
followso If the Basic salary exceeds 30,000/=, the Dearness Allowance 40% the BS,
otherwise 50% of the BS
o If the BS exceeds 25,000/=, the House Rent Allowance is 20% of the BS,
otherwise 3,000 of the BS
o Income Tax is calculated at the rate of 12% if the Total Salary exceeds
50,000/=
• Write a Java program that takes BS as input, calculate
DA, HRA, IT, Total Salary, Net Salary, and display
them all on screen
MIT 12043, By S. Sabraz Nawaz 24
![Page 25: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/25.jpg)
Solution
25
![Page 26: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/26.jpg)
Solution…
MIT 12043, By S. Sabraz Nawaz 26
![Page 27: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/27.jpg)
3-27
Nested if Statements
• To test more than one condition, an if statement can
be nested inside another if statement
• If an if statement appears inside another if
statement (single or block) it is called a nested if
statement
• The nested if is executed only if the outer if
statement results in a true condition
MIT 12043, By S. Sabraz Nawaz
![Page 28: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/28.jpg)
3-28
Alignment and Nested if Statements
if (expression)
{
if (expression)
{
statement;
}
else
{
statement;
}
}
else
{
statement;
}
This if and else
go together.This if and
else
go together.
MIT 12043, By S. Sabraz Nawaz
![Page 29: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/29.jpg)
Example 04
• For example, consider a banking program that
determines whether a bank customer qualifies for a
special, low interest rate on a loan
• To qualify, two conditions must exist:
1. The customer’s salary must be at least Rs.30,000
2. The customer must have held his or her current job for at
least 02 years
MIT 12043, By S. Sabraz Nawaz 29
![Page 30: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/30.jpg)
Example 04…
MIT 12043, By S. Sabraz Nawaz 30
![Page 31: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/31.jpg)
if-else-if Statements
• The if-else-if statement tests a series of conditions
• It is often simpler to test a series of conditions with the if-else-
if statement than with a set of nested if-else statements
MIT 12043, By S. Sabraz Nawaz 31
![Page 32: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/32.jpg)
3-32
if-else-if Syntax
if (expression_1)
{
statement;
statement;
etc.
}
else if (expression_2)
{
statement;
statement;
etc.
}
Insert as many else if clauses as necessary
else
{
statement;
statement;
etc.
}
If expression_1 is true these statements are
executed, and the rest of the structure is ignored.
Otherwise, if expression_2 is true these statements are
executed, and the rest of the structure is ignored.
These statements are executed if none of the
expressions above are true.
MIT 12043, By S. Sabraz Nawaz
![Page 33: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/33.jpg)
Example 05
• Your lecturer has asked you to write a program that will allow
a student to enter a test score and then display the grade for
that score
MIT 12043, By S. Sabraz Nawaz 33
![Page 34: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/34.jpg)
34
![Page 35: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/35.jpg)
Logical Operators
MIT 12043, By S. Sabraz Nawaz 35
![Page 36: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/36.jpg)
Logical Operators
• Logical operators connect two or more relational
expressions into one or reverse the logic of an expression.
• Java provides two binary logical operators,
• && and ||
• used to combine two boolean expressions into a single expression
• It also provides the unary ! Operatoro reverses the truth of a boolean expression
MIT 12043, By S. Sabraz Nawaz 36
![Page 37: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/37.jpg)
MIT 12043, By S. Sabraz Nawaz 37
Logical Operators…
Operator Meaning Effect
&& AND Connects two boolean expressions into one. Both expression must be true for the overall expression to be true
|| OR Connects two boolean expressions into one. One or both expressions must be true for the overall expression to be true. It is only necessary for one to be true, and it does not matter which one.
! NOT Reverses the truth of a boolean expression. If it is applied to an expression that is true, the operator returns false. If it is applied to an expression that is false, the operator returns true
![Page 38: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/38.jpg)
Expression Meaning
x > y && a < b Is x greater than y AND is a less than b?
x == y || x == z Is x equal to y OR is x equal to z?
!(x > y) Is the expression x > y NOT true?
MIT 12043, By S. Sabraz Nawaz 38
Logical Operators…
![Page 39: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/39.jpg)
Truth table for the && operator
Expression Value of the Expression
true && false false
false && true false
false && false false
true && true true
MIT 12043, By S. Sabraz Nawaz 39
![Page 40: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/40.jpg)
Truth table for the ||operator
Expression Value of the Expression
true || false true
false || true true
false || false false
true || true true
MIT 12043, By S. Sabraz Nawaz 40
![Page 41: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/41.jpg)
Truth table for the ! operator
Expression Value of the Expression
!true false
!false true
MIT 12043, By S. Sabraz Nawaz 41
![Page 42: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/42.jpg)
Example 06 – Improved Ex 05
42
![Page 43: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/43.jpg)
43
![Page 44: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/44.jpg)
The % Operator
• The above modulus operator returns the remainder
• Eg.o 3 % 2 1 (remainder is one)
o 15 % 4 3 (remainder is three)
• Odd or Even number finder
MIT 12043, By S. Sabraz Nawaz 44
![Page 45: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/45.jpg)
Comparing String Objects
• You cannot use relational operators to compare String objects
• To compare, you should use the String class’s equals method.
• The general form of the method is as follows:
StringReference1.equals(StringReference2)
o StringReference1 is a variable that references a String object, and StringReference2 is another variable that references a String object
• The method returns true if the two strings are equal, or false if they are not equal. Here is an example:
if (name1.equals(name2))
• The expression in the if statement will return true if they are the same, or false if they are not the same
MIT 12043, By S. Sabraz Nawaz 45
![Page 46: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/46.jpg)
Example 07
• Note: the equal method is case sensitive; if you want to ignore the case
case, use string. equalsIgnoreCase() method
MIT 12043, By S. Sabraz Nawaz 46
![Page 47: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/47.jpg)
Classroom Exercise
A car rental company has three types of cars; Premio, Alien, andCivic. The rental scheme is as follows.
Write a Java program to input Vehicle Type, Number of DaysRented, and Kilometres run to calculate the Total Rent Payableand display on the screen.
MIT 12043, By S. Sabraz Nawaz 47
Type Premio Alien Civic
Fixed Rent per day 1,500/- 2,000/- 2,500/-
Rate per KM 20/- 30/- 40/-
Free Allowance per day 80/- 60/- 50/-
![Page 48: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/48.jpg)
• For decisions involving many possible paths and values we use the switch statement
• The switch statement can have a number of possible execution paths
• At the end of each sequence we insert a breakstatement that means ‘go to the end of the switch’
• A switch works with the byte, short, char, andint primitive data types. It works with the String class as well.
The switch Statement
48
![Page 49: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/49.jpg)
The switch Statement
switch (variable)
{
case value1:
statement;
statement;
break;
case value2:
statement;
statement;
break;
...
...
default:
statement;
break;
}
Don’t forget breaks!
switch
case
default
break
Reserved words
49
![Page 50: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/50.jpg)
• You can have any number of case statements within a switch.
Each case is followed by the value to be compared to and a
colon
• The value for a case must be the same data type as the variable
in the switch, and it must be a constant or a literal (character)
• When the variable being switched on is equal to a case, the
statements following that case will execute until a break
statement is reached
Rules apply to a switch statement
50
![Page 51: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/51.jpg)
• When a break statement is reached, the switch terminates, and the flow of control jumps to the next line following the switch statement
• Not every case needs to contain a break. If no break appears, the flow of control will fall through to subsequent cases until a break is reached
• A switch statement can have an optional default case, which must appear at the end of the switch. The default case can be used for performing a task when none of the cases is true. No break is needed in the default case
Rules apply to a switch statement
51
![Page 52: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/52.jpg)
• The same case can have two or more labels. For
example:
switch (num)
{
case 1:
case 2:System.out.println (“Stand up and sing a song");
break;
case 3:
...
}
switch - Example
52
![Page 53: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/53.jpg)
53
Month Finder
![Page 54: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/54.jpg)
54
Switch with Multiple case labels
![Page 55: Lecture 3 MIT 12043, Fundamentals of Programming … · Boolean Expressions int a = 3; b = 4; a == b will evaluate to false a != b will evaluate to true a > b will evaluate to](https://reader031.vdocument.in/reader031/viewer/2022020204/5b701f737f8b9af12d8d2d7a/html5/thumbnails/55.jpg)
Next Chapter: Looping
MIT 12043, By S. Sabraz Nawaz 55