1 / 18

Building Java Programs Chapter 2

Building Java Programs Chapter 2. PRIMITIVE DATA TYPES AND OPERATIONS. Objectives. Identify Java’s primitive data types and operators . Evaluate complex expressions using rules of precedence and mixed types. Data Types. A name for a category of data values that are all related.

marcia-wade
Download Presentation

Building Java Programs Chapter 2

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Building Java ProgramsChapter 2 PRIMITIVE DATA TYPES AND OPERATIONS

  2. Objectives • Identify Java’s primitive data types and operators. • Evaluate complex expressions using rules of precedence and mixed types.

  3. Data Types • A name for a category of data values that are all related. • Different data types support different operations and behave differently. You can multiply numbers, but can you multiply strings? Can you add them? • Stored differently in computer memory as well. 27 = 00011011 “hello” = 01101000 00000101 1101100 1101100 01101111

  4. Java’s Primitive Data Types Variations of int: byte, short, long Variations of double: float

  5. Java’s Arithmetic Operators Most behave exactly like you would expect them to in math class, but we’ll learn about the exceptions soon.

  6. Expressions • An expression is a simple value or a set of operations that produces a value. • Simplest expressions are literals of the data types we know. E.g. 27, “Seattle... Yay!", -1.7, false • More complex expressions can use operators and parentheses. E.g.: • 5 * 2 7 - 3 * (1.3 – (5.7 – 3)) • System.out.println( 5 * 2 / 3 + 6 );

  7. Floating-Point Division • When dividing double or float values, it’s just like math class, but with some rounding errors here and there… • 5.0 / 2.0 = 2.5 • 10.0 / 3.0 = 3.3333333333333335(rounding error!) • 4.0 / 5.0 = 0.8 • 8.0 / 3.0 * 3.0 = 8.0

  8. Integer Division… weird… • When dividing integers, we keep the whole part, but discard the fractional part. • 5 / 2 = 2 not 2.5 • 10 / 3 = 3 not 3.333… • 4 / 5 = 0 not 0.8 • 8 / 3 * 3 = ? 2 * 3 = ? 6 not 8!

  9. Integer mod (%) • The mod operator computes the remainder of a division • 6 / 4 = 1, but it would have had a remainder 2 • Therefore, 6 % 4 = 2 • 20 % 7 = 15 % 4 = • 13857 % 2 = 13856 % 2 = • 8374 % 10 = 8374 % 100 = • 36 % 6 = 7 % 9 = 3 6 0 1 4 74 7 0

  10. Think, Pair, Share… • In your notebook… • Write four expressions using only % and / that will get me the four individual digits of 7382. • 7382 • 7382 • 7382 • 7382 • *** Will your expressions work for other four-digit numbers? *** = 2 ????? % 10 = 8 / 10 % 10 ????? = 3 / 100 % 10 ????? = 7 ????? / 1000 % 10

  11. Operator Precedence • Usually, we evaluate expressions left-to-right, but certain operations take precedence over others and get evaluated first. • Parentheses can always override precedence. • Precedence table:

  12. Precedence Examples • 2 + 2 * 5 = 12 not 20 • 3 * 3 + 2 * 2 = 13 not 22 • 7 + 5 / 2 * 3 – 4 = 9 not 14 • +3 * -4 = -12 • 3 + -4 = -1 • 3 - -4 = 7

  13. Mixing Types • When doing an operation on an int and a double, the intgets promoted to a double. • 1 * 4.682 = 4.682 • 7 / 2.0 = 3.5 • 5 * 1.0 / 2 = 3.0 • 7.0 / 2 – 7 / 2 = ? 3.5 – 3 = ? 0.5

  14. Casting • You can explicitly convert a value from one data type to another by casting. • (double) 99 = 99.0 • (int) 2.5 = 2 • ((double) 7) / 2 = 3.5 • (int) 2.5 * 3.0 = 6.0 • (int) (2.5 * 3.0) = 7

  15. In your notebook… 4.0 / 2 * 9 / 2 2.0 * 9 / 2 18.0 / 2 9.0

  16. In your notebook… 12 / 7 * 4.4 * 2 / 4 1 * 4.4 * 2 / 4 4.4 * 2 / 4 8.8 / 4 2.2

  17. In your notebook… 9 / 2.0 + 7 / 3 – 3.0 / 2 4.5 + 7 / 3 – 3.0 / 2 4.5 + 2 – 3.0 / 2 4.5 + 2 – 1.5 6.5 – 1.5 5.0

  18. In your notebook… 53 / 5 / (0.6 + 1.4) / 2 + 13 / 2 53 / 5 / 2.0 / 2 + 13 / 2 10 / 2.0 / 2 + 13 / 2 5.0 / 2 + 13 / 2 2.5 + 13 / 2 2.5 + 6 8.5

More Related