Manipulating Data Using Methods - PowerPoint PPT Presentation

1 / 50
About This Presentation
Title:

Manipulating Data Using Methods

Description:

The Body Mass Index Calculator. An interactive program ... Save the previous version of the Body Mass Index Calculator with a new filename ... – PowerPoint PPT presentation

Number of Views:71
Avg rating:3.0/5.0
Slides: 51
Provided by: uiu
Category:

less

Transcript and Presenter's Notes

Title: Manipulating Data Using Methods


1
Chapter 3
  • Manipulating Data Using Methods

2
Objectives
  • Identify, declare, and use primitive data types
  • Use the System class to create data streams
  • Instantiate the BufferedReader class in code
  • Use the readLine() method to handle user input

3
Objectives
  • Convert strings to numbers using the parse()
    method
  • Use assignment statements to store data with
    proper identifiers
  • Use operators and parentheses correctly in
    numeric and conditional expressions
  • Round an answer using the round() method of the
    Math class

4
Objectives
  • Use Swing components to build the GUI for a Swing
    program
  • Use the exit() method to close a Swing program
  • Implement an ActionListener to handle events
  • Add interface components to an applet

5
Objectives
  • Use the init() and paint() methods to load the
    applet interface
  • Use the actionPerformed() method
  • Run and test an interactive applet
  • Manage Java source code files and Java class files

6
Introduction
  • Data are collections of raw facts or figures
  • A program performs operations on input data to
    output information
  • Input data can come from a variety of sources
  • The program itself
  • Users of the program
  • External files

7
The Body Mass Index Calculator
  • An interactive program
  • Accepts the weight and height from the user
  • Calculates the BMI to gauge total body fat
  • Displays the result
  • Three versions
  • Mobile devices use the command prompt
  • Notebooks use dialog boxes
  • Web environments use an applet interface

8
(a) console application in a command prompt window
(b) console application using dialog boxes
(c) applet
9

10
Problem Analysis
  • Convert user input to metric measurements
  • Calculate the BMI
  • Display the result

11
Design the Solution
  • Design the three kinds of user interfaces with
    storyboards
  • Design the logic of the program
  • Use pseudocode for sequential flow for all
    programs
  • Use an event diagram for the applet
  • Validate the design
  • Compare the program design with the original
    requirements

12

13
Coding the Program
  • Import the java.io package
  • Provides classes to support system input and
    output
  • Add a throws IOException clause to the method
    header
  • Warns the compiler that the possibility of input
    or output errors exists
  • Gives the program the opportunity to handle input
    or output errors during run-time without aborting

14
Coding the Program

15
Storing Data
  • Java is strongly typed
  • Variables must be declared with a data type
  • Variable locations can hold only that data type
  • Java has two categories of data types
  • Primitive data types hold single data items
  • Integers, characters, floating point, and
    booleans are primitive types
  • Reference data types hold a value that refers to
    the location of the data
  • All Objects and arrays are reference types

16

17
Declaring Variables

18
User Input - Streams
  • The act of data flowing in and out of a program
    is called a stream
  • The System class creates three streams when a
    program executes

19
User Input - Streams cont.
  • Data from input streams are first sent to a
    buffer
  • The java.io package contains several stream
    classes
  • InputStreamReader
  • Decodes the bytes from the System.in buffer into
    characters
  • BufferedReader
  • Increases efficiency by temporarily storing the
    input received from another class, such as
    InputStreamReader
  • Aids in platform independence by simplifying the
    process of reading text and numbers from various
    input sources

20
Using the BufferedReader class
  • Call the BufferedReader constructor to
    instantiate a BufferedReader object
  • The argument of the BufferedReader() method
    instantiates an InputStreamReader
  • BufferedReader() returns a reference to the input
    data from System.in

21

22
Conversions
  • The readLine() method reads a line of input text
    and returns a String containing the line
  • The returned String must be explicitly converted
    if the data is to be used as another data type
  • Each primitive data type has a wrapper class
    allowing the primitive to be treated as an object
  • The wrapper classes provides a parse() method to
    convert Strings to primitives, and vice versa
  • Example height dataIn.readLine()
  • inches Integer.parseInt(height
    )

23
Assignment Statements
  • General syntax location value

24
Arithmetic Operators
25
Arithmetic Operators
  • The order of operator precedence is a
    predetermined order that defines the sequence in
    which operators are evaluated in an expression
  • Addition, subtraction, multiplication, and
    division can manipulate any numeric data type
  • When Java performs math on mixed data types, the
    result is always the larger data type
  • Casts allow programmers to force a conversion
    from one primitive type to another

26
Comparison Operators
  • A comparison operation results in a true or false
    value that can be stored in a boolean variable

27
Numeric Expressions
  • Numeric expressions evaluate to a number
  • Only numeric primitive data types may be used in
    a numeric expression
  • A value and variable must be separated by an
    arithmetic operator
  • Unless parentheses supercede, an expression is
    evaluated left to right with the following rules
    of precedence
  • Multiplication and/or division
  • Integer division
  • Modular division
  • Addition and/or subtraction

28
Conditional Expressions
  • Conditional expression evaluate to either true or
    false
  • Comparison operators, values, variables, methods,
    and Strings may be used in a conditional
    expression
  • Two operands must be separated by a comparison
    operator
  • Unless parentheses supercede, an expression is
    evaluated left to right with relational operators
    (, ) taking precedence over equality
    operators (, !)

29
Parentheses in Expressions
  • Parentheses may be used to change the order of
    operations
  • The part of the expression within the parentheses
    is evaluated first
  • Parentheses can provide clarity in complex
    expressions
  • Numeric and conditional expressions should be
    grouped with parentheses
  • Parentheses can be nested
  • Java evaluates the innermost expression first and
    then moves on to the outermost expression

30
Error-Free Expressions
  • Java may not be able to evaluate a validly formed
    expression due to the following logic errors
  • Dividing by zero
  • Taking the square root of a negative value
  • Raising a negative value to a non-integer value
  • Using a value too great or too small for a given
    data type
  • Comparing different data types in a conditional
    expression

31
The Math Class

32
Using Variables in Output
33
Testing the Application
  • Compile the Body Mass Index Calculator program
  • Execute the program
  • Test the program by entering the sample input
    data supplied in the requirements phase at the
    prompts
  • Verify the results
  • Print the source code and screen images for
    documentation

34
Using Swing Components
  • Save the previous version of the Body Mass Index
    Calculator with a new filename
  • Import the javax.swing.JOptionPane class
  • Contains methods to create dialog boxes for
    input, confirmation, and messages
  • Delete the IOException and BufferedReader code
  • The swing dialog boxes buffer data from the user
    and handle IO errors

35
Swing Dialog Boxes
  • Dialog boxes are created with the JOptionPane
    show methods
  • The showInputDialog() and showConfirmDialog
    return a String containing the user input

36

37
Closing Programs that use Swing
  • System.exit() terminates an application that
    displays a GUI
  • The command prompt window closes when this method
    is called
  • System.exit accepts an integer argument that
    serves as a status code
  • 0 indicates successful termination
  • 1 indicates abnormal termination

38
Testing the Swing Program
  • Verify that the file name matches the class name
    at the beginning of the code
  • Compile the source code
  • Test with the same sample data for all versions
    to compare output results
  • If incorrect or unrealistic data is entered by
    the user, errors will occur
  • Errors and exception handling will be discussed
    in a later chapter

39
Moving to the Web
  • The applet version of the Body Mass Index
    Calculator has four kinds of objects
  • Image, Labels, TextFields, and Buttons
  • Import three packages
  • Java.applet
  • Java.awt
  • Java.awt.event
  • Implement an ActionListener interface in the
    class header
  • Informs the program to respond to user-driven
    events

40
Moving to the Web
  • Every event class has one or more associated
    listener interfaces

41

42
Adding Interface Components
  • Label
  • Displays text in the applet window
  • TextField
  • Displays a text box for users to enter text
  • Buttons
  • Displays a command button for users to click

43
The init() Method
  • Initializes the window color and graphic
  • Adds components to the applet window
  • Registers the Buttons ActionListener

44
The actionPerformed() Method
  • When a click event occurs, the ActionListeners
    actionPerformed() method is triggered
  • Input values are retrieved with getText()
  • Calculations are performed
  • Output is sent to a label with setText()

45
The paint() Method
  • Draws the initialized image in the applet window

46
Creating an HTML Host Document for an Interactive
Applet
  • Compile the applet
  • Write an HTML Host Document to execute the applet
  • Use the tag to specify the bytecode
    file, and width and height of the window
  • Use the same sample data to test the applet
  • Document the source code

47
File management
  • Coding and compiling an application creates
    several files on your storage device
  • File naming conventions and the operating
    systems capability of displaying icons can help
    the programmer maintain a logical order
  • Three java files named after the program purpose
    and user interface type
  • Three class files after compilation
  • HTML host document
  • Image file

48
Summary
  • Variable declarations
  • Data types
  • Assignment statements
  • Input streams
  • InputStreamReader
  • BufferedReader
  • readline()
  • Arithmetic operators
  • Operator precedence
  • Math class methods

49
Summary
  • Output using System.out
  • Concatenation of mixed data types
  • Java Swing components
  • JOptionPane
  • AWT Components and method constructors
  • Labels, TextFields, and Buttons
  • Events
  • ActionEvent, ActionListener, actionPerformed()

50
Chapter 3 Complete
Write a Comment
User Comments (0)
About PowerShow.com