Relational Expressions Relational expressions Expressions that compare operands
- Slides: 42
Relational Expressions • Relational expressions: – Expressions that compare operands – Sometimes called conditions – Evaluated to yield a result – Typically used as part of a selection statement • A simple relational expression consists of a relational operator connecting two variable and/or constant operands
3
Logical Operators • Complex conditions can be created using Boolean logical operations: – AND – OR – NOT • AND operator – && – True only if both individual expressions are true by themselves
Logical Operators (continued) • OR operator – || – True if either one or both of two expressions are true • NOT operator – ! – Changes expression to opposite state • Relational operators have higher precedence than logical operators
Logical Operators (continued) • && and || operators: – Can only be used with Boolean operands – Second operand not evaluated if evaluation of first is sufficient to determine final value of logical operation
7
A Numerical Accuracy Problem • Tests for equality of numbers using relational operator == should be avoided – Applies to: • Floating-point • Double-precision • Many decimal numbers cannot be represented exactly in binary using a finite number of bits • Require that absolute value of difference between operands be less than an extremely small value
The if-else Statement • Directs computer to select a sequence of instructions based on the result of a comparison • Condition is evaluated first – If the value of condition is true statement 1 is executed – If the value is false the statement after reserved word else is executed
The if-else Statement (continued) if (condition) <---------no semicolon here statement 1; else <---------no semicolon here statement 2;
Compound Statements • Any number of single statements contained between braces • Takes place of single statement • Semicolon is not placed after braces that define compound statement
The Boolean Data Type • Tested condition in if-else statement must always evaluate to a Boolean value • Value of condition must be either true or false • The boolean data type is restricted in its usage as the value of a relational expression • Boolean values can be: – Displayed – Compared – Assigned
One-Way Selection • No else expression • Syntax: if (condition) statement; • The statement following if (condition) is only executed if condition has a true value
Placement of Braces in a Compound Statement • Common practice for some programmers: – Place opening brace of compound statement on same line as if and else statements if (condition) { statement 1; } else { statement 2; }
Nested if Statements • One or more if-else statements can be included within either part of if-else statement • Last else is with closest unpaired if – Unless braces alter default pairing • Process of nesting if statements can be extended indefinitely
The if-else Chain • Else part of an if statement contains another if-else statement • Syntax: if (expression 1) statement 1; else if (expression 2) statement 2; else statement 3;
The if-else Chain (continued) • Alternate syntax: if (expression 1) statement 1; else if (expression 2) statement 2; else statement 3; • Used extensively in programming applications
The switch Statement • Provides alternative to if-else chain – For cases that compare the value of an integer expression to a specific value • Reserved words: – Switch – Case – Default – Break
Switch Syntax switch (expression) { // start of compound statement case value-1: <------terminated with a colon statement 1; statement 2; break; case value-2: <-------terminated with a colon statementm; statementn; break; default: <----------terminated with a colon statementaa; statementbb; } // end of switch and compound statement
The switch Statement (continued) • Once entry point has been located: – All further case evaluations are ignored – Execution continues through end of compound statement – Unless break statement is encountered • The break statement causes an immediate exit from the switch statement
Program Design and Development: Introduction to UML • Explicit design – Should always be undertaken before coding begins – Referred to as program modeling • Unified Modeling Language (UML) – Program modeling language with its own set of rules and notations – Not part of Java language
Program Design and Development: Introduction to UML (continued) • Must understand specify: – What the objects in the system are – What can happen to these objects – When it can happen • Each item is addressed by a number of individual and separate views and diagrams
UML Diagram Types • • • Class Object State Sequence Activity Use-case • Component • Deployment • Collaboration 25
Class and Object Diagrams • Class diagrams – Used to describe classes and their relationships • Object diagrams – Describe specific objects and relationships • Attribute – Characteristic that each object in class must have • Attribute type – Primitive type – Class type
Class and Object Diagrams (continued) • Visibility – Defines where the attribute can be seen – Whether the attribute can be used in other classes or is restricted to the class defining it • Operations – Transformations that can be applied to attributes – Ultimately coded as Java methods
Relationships • The three basic relationships include: – Association – Aggregation – Generalization
32
Application: A Date Class • Need to develop a date class • Extremely important in financial programs • Design stages: – Identify type of objects – Decide how Date object is internally represented • Identify attributes – Identify initial set of operations
User Interfaces, Definitions, and Information Hiding • User interface consists of: – Class’s public member methods’ header lines – Supporting comments • Definition consists of: – Class’s definition section – Class’s private data members • Information hiding refers to the principle that how a class is internally constructed is not relevant to any programmer who wishes to use the class
Simplifying the Code • Once a program is working, simplify the code: – Remove print statements – Use methods such as set. Date() to initialize values in constructors
Adding Class Methods Leap Year Algorithm If the year is divisible by 4 with a remainder of 0 AND the year is divisible by 100 with a nonzero remainder OR the year is divisible by 400 with no remainder then the year is a leap year Else the year is not a leap year End. If
Common Programming Errors • Assuming the if-else statement is selecting an incorrect choice when the problem is really the values being tested • Using nested if statements without including braces to clearly indicate the desired structure • Mistakenly using the assignment operator = instead of the relational operator == when comparing Boolean data • Forgetting to use a break statement to close off a case within a switch statement
Summary • Relational expressions: – Referred to as conditions – Used to compare operands • if-else statements: – Used to select between two alternative statements – Based on a value of a relational or logical expression – Can contain other if-else statements
Summary (continued) • A compound statement consists of a number of individual statements enclosed within the brace pair { and } • The switch statement is a multiway selection statement
- Worksheet formulas consist of two components: operands and
- Google search logical operators
- Thể thơ truyền thống
- Con hãy đưa tay khi thấy người vấp ngã
- Thơ thất ngôn tứ tuyệt đường luật
- Tôn thất thuyết là ai
- Ngoại tâm thu thất chùm đôi
- Chiến lược kinh doanh quốc tế của walmart
- Gây tê cơ vuông thắt lưng
- Block av độ 1
- Tìm độ lớn thật của tam giác abc
- Sau thất bại ở hồ điển triệt
- Relational algebra is a procedural language
- Relational algebra and calculus
- Relational algebra and relational calculus
- Object relational and extended relational databases
- Relational calculus symbols
- Increment operator in c
- Sql relational algebra
- Distributed relational database design
- Assignment operator in relational algebra
- Circumscribing relationship stage
- Rdbms introduction
- Relational data structures
- Er diagram to relational model conversion
- Dimensional modeling vs relational modeling
- Sql relational algebra
- Relational dialectics theory
- Relational expression
- Aggregate function in relational algebra
- Poor students rich teaching
- Field, tenor and mode
- Formal relational query languages
- Object oriented vs relational database
- Intercultural communication 2nd edition
- Vital relational functions
- Relational analysis speech
- Natural join operation
- Circumscribing phase
- Relational power
- Relational design theory
- Relational dialectics examples
- Er to relational mapping example