0% found this document useful (0 votes)
103 views8 pages

5 Methods PDF

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
103 views8 pages

5 Methods PDF

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

2/19/2020

Methods
Liang, Introduction to Java programming, 11th Edition, © 2017 Pearson Education, Inc.
All rights reserved

By: Mamoun Nawahdah (Ph.D.)


2020

Defining Methods
 A method is a collection of statements that are
grouped together to perform an operation.

1
2/19/2020

CAUTION
 A return statement is required for a value-returning method.
 The method shown below in (a) is logically correct, but it has a
compilation error because the Java compiler thinks it possible
that this method does not return any value.

 To fix this problem, delete if (n < 0) in (a), so that the compiler


will see a return statement to be reached regardless of how the
if statement is evaluated.

Passing Parameters
public static void nPrintln(String message, int n) {
for (int i = 0; i < n; i++)
System.out.println(message);
}
 Suppose you invoke the method using
nPrintln(“Welcome to Java”, 5);
What is the output?
 Suppose you invoke the method using
nPrintln(“Computer Science”, 15);
What is the output?
 Can you invoke the method using
nPrintln(15, “Computer Science”); 4

2
2/19/2020

Ambiguous Invocation

Scope of Local Variables


 A local variable: a variable defined inside
a block (e.g. method, loop).
 Scope: the part of the program where the
variable can be referenced.
 The scope of a local variable starts from
its declaration and continues to the end of
the block that contains the variable.
 A local variable must be declared before it
can be used.
6

3
2/19/2020

Scope of Local Variables


 You can declare a local variable with the same
name multiple times in different non-nesting
blocks in a method, but you cannot declare a local
variable twice in nested blocks.

Method Abstraction
 You can think of the method body as a
black box that contains the detailed
implementation for the method.

4
2/19/2020

Benefits of Methods
• Write a method once and reuse it
anywhere.
• Information hiding. Hide the
implementation from the user.
• Reduce complexity.

The Math Class


 Class constants:
 PI
E
 Class methods:
 Trigonometric Methods
 Exponent Methods
 Rounding Methods
 min, max, abs, and random Methods
10

5
2/19/2020

Trigonometric Methods
 sin(double a) Examples:
 cos(double a) Math.sin(0) returns 0.0

 tan(double a) Math.sin(Math.PI / 6) returns 0.5

 acos(double a) Math.sin(Math.PI / 2) returns 1.0

 asin(double a) Math.cos(0) returns 1.0

 atan(double a) Math.cos(Math.PI / 6) returns 0.866

Math.cos(Math.PI / 2) returns 0.0

Radians
Math.toRadians(90)
11

Exponent Methods
 exp(double a)
Returns e raised to the power of a.
Examples:
 log(double a)
Math.exp(1) returns 2.71
Returns the natural logarithm of a.
Math.log(2.71) returns 1.0
 log10(double a)
Math.pow(2, 3) returns 8.0
Returns the 10-based logarithm of a.
Math.pow(3, 2) returns 9.0
 pow(double a, double b)
Math.pow(3.5, 2.5) returns 22.917
Returns a raised to the power of b.
Math.sqrt(4) returns 2.0
 sqrt(double a)
Math.sqrt(10.5) returns 3.24
Returns the square root of a.

12

6
2/19/2020

Rounding Methods
double ceil(double x) x rounded up to its nearest
integer. This integer is returned as a double value.
double floor(double x) x is rounded down to its nearest
integer. This integer is returned as a double value.
double rint(double x) x is rounded to its nearest integer.
If x is equally close to two integers, the even one is
returned as a double.
int round(float x) Return (int)Math.floor(x+0.5).
long round(double x) Return (long)Math.floor(x+0.5).

13

min, max, and abs


max(a, b) and min(a, b)
Returns the maximum or Examples:
minimum of two parameters. Math.max(2, 3) returns 3

abs(a) Math.max(2.5, 3) returns 3.0


Returns the absolute value of Math.min(2.5, 3.6) returns 2.5
the parameter.
Math.abs(-2) returns 2
random() Math.abs(-2.1) returns 2.1
Returns a random double value
in the range [0.0, 1.0).

14

7
2/19/2020

The random Method


 Generates a random double value greater than
or equal to 0.0 and less than 1.0
(0 <= Math.random() < 1.0)

In general:

15

Case Study: Computing Angles of a Triangle

Write a program that prompts the user to enter


the x- and y-coordinates of the three corner points
in a triangle and then displays the triangle’s angles.

16

You might also like