Download presentation
Presentation is loading. Please wait.
1
mixing types in expressions Operators such as +, -, * and / are overloaded: the same name has many different values + overloaded as String concatenation too! “Good” + “ ” + “morning!” “Good morning!” What happens in an expression which mixes values of different types? 5 + 2.5 = ???? 5 is coerced to its equivalent double value, 5.0: 5.0 + 2.5 = 7.5 Type coercion happens only from “smaller” type to “larger” type (e.g. int double, not double int)
2
relational operators We can form expressions like: x < y which have a value of true or false (i.e. the type of this expression is boolean) relational operators: >= ==
3
Equality testing Equality testing: –of primitive values: == –of objects: equals method Consider: Foo a = new Foo();Foo c = a; Foo b = new Foo(); what is value ofwhat is value of (a==b)(a==c)
4
assignment = ; evaluate, assign value to Example: int x = 5; int y = x + 3; // what value is assigned to y?
5
assignment Example: int x = 5; x = x + 3; // what value is assigned to x? Notice that “=” is not “equality”, but “assignment”.
6
Some other operators ++ increments the variable it is applied to Example int x = 5; x++;// value of x is now 6 (Caution: the value of the expression x++ is perhaps not what you would expect. The value of x++ is the value of x prior to the increment of x.)
7
Control structure overview if ( ) true false
8
Control structure overview if ( ) else true false
9
Control structure overview while ( ) true false
10
Working with multiple objects A variable can refer to a single object: IBehavior cc = new ColorChanging(); IBehavior br = new Breathing(); A variable referring to many objects? No, but we saw how to build a composite object. IBehavior cc = new CompositeBehavior(cc,br); But it’s not too easy to add/remove items from a composite. Are there options?
11
Collections interface: java.util.Collection classes: –java.util.HashSet –java.util.ArrayList E is the type of element contained in the collection
12
Use of a collection HashSet names = new HashSet (); names.add(“Amy”);names.remove(“Bob”); names.add(“Bob”); names.add(“Cindy”); names.add(“Dave”); names.add(“Emma”); …
13
for-each loop for (String name : names) { System.out.println(name); } This would print out: Amy Cindy Dave Emma
14
Collection.shuffle Collection.shuffle(List )
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.