40+ examples of user defined methods in java with explanation

Post on 07-Dec-2014

918 Views

Category:

Education

3 Downloads

Preview:

Click to see full reader

DESCRIPTION

40+ examples of user defined methods in java with explanation, advantages, terms, exercises, pass arrays to methods, return array from methods, for each loop examples, build complex programs using your defined methods animation included INDEX Simple Programs using Methods Add two numbers Average of three numbers Circle area Fahrenheit to Celsius Check number is even or not Check number is prime or not Reverse of a number Check number is palindrome or not Count number of digits in a number Sum of digits Pass Array to Methods Print all elements of an array Sum of an array Average of an array Maximum element of an array Minimum element of an array Returning Array From Methods Reverse array Reverse every element of an array Decimal to binary, octal, hex Binary to decimal, octal, hex Octal to binary,decimal, hex Hexadecimal to binary, octal, decimal

Transcript

User Defined Methods in Java

With Animation

Index1. Advantages2. Simple Programs using Methods

a) Add two numbersb) Average of three numbersc) Circle aread) Fahrenheit to Celsiuse) Check number is even or notf) Check number is prime or notg) Reverse of a numberh) Check number is palindrome or noti) Count number of digits in a numberj) Sum of digitsk) LCM of 2, 3 and 4 numbersl) HFC of 2 numbersm) 1 to 100 prime numbersn) 200 to 500 prime and palindromeo) Decimal to binary, octal, hexp) Binary to decimal, octal, hexq) Octal to binary,decimal, hexr) Hexadecimal to binary, octal, decimal

3. Pass Array to Methodsa) Print all elements of an arrayb) Sum of an arrayc) Average of an arrayd) Maximum element of an arraye) Minimum element of an array

4. Returning Array From Methodsa) Reverse arrayb) Reverse every element of an array

Function v/s Method

 

 

 

 

Function v/s Method

Q.)What is the difference between a function and a method.? 

 

 

Function v/s Method

Q.)What is the difference between a function and a method.?Ans.) A method is a function that is written in a class.

 

 

Function v/s Method

Q.)What is the difference between a function and a method.?Ans.) A method is a function that is written in a class.

We do not have functions in java; instead we have methods. This means whenever a function is written in java. It should be written inside the classonly. But if we take C++, we can write the functions inside as well as outside the class. So in C++, they are called member functions and not methods.

Function with no arguments and no return(no input no output)

void display() { System.out.println("this is inside method body");

}

Function with no arguments and no return(no input no output)

void display() { System.out.println("this is inside method body");

}

When you want to return no value, then set return type to void

Function with no arguments and no return(no input no output)

void display() { System.out.println("this is inside method body");

}

Name of the function is “display”

When you want to return no value, then set return type to void

No arguments here

Function with no arguments and no return(no input no output)

void display() { System.out.println("this is inside method body");

}

Name of the function is “display”

When you want to return no value, then set return type to void

Complete Programpublic class function1 { static void display() { System.out.println("this is inside method body"); } public static void main(String args[]) { System.out.println("before function call");

display();

System.out.println("after function call"); }}

Complete Programpublic class function1 { static void display() { System.out.println("this is inside method body"); } public static void main(String args[]) { System.out.println("before function call");

display();

System.out.println("after function call"); }}

Method Definition

Complete Programpublic class function1 { static void display() { System.out.println("this is inside method body"); } public static void main(String args[]) { System.out.println("before function call");

display();

System.out.println("after function call"); }}

Method Definition

Method Calling

Add two integer numbers

int add(int a, int b){

int c=a+b;return c;

}

Add two integer numbers

int add(int a, int b){

int c=a+b;return c;

}

Two Integer Arguments

Add two integer numbers

int add(int a, int b){

int c=a+b;return c;

}

Two Integer Arguments

Returning integer value to calling method

Complete Program

public class function1 { static int add(int a, int b) {

int c=a+b;return c;

} public static void main(String args[]) {

System.out.println(add(45,67)); }}

Complete Program

public class function1 { static int add(int a, int b) {

int c=a+b;return c;

} public static void main(String args[]) {

System.out.println(add(45,67)); }}

Display method is called method,

because it is called by main

method

Complete Program

public class function1 { static int add(int a, int b) {

int c=a+b;return c;

} public static void main(String args[]) {

System.out.println(add(45,67)); }}

Display method is called method,

because it is called by main

method

main method is calling method,

because it is calling display

method.

Average of three integer numbers

double avg(int a, int b, int c){

double d;d=((double)a+b+c)/3;

return d;}

Average of three integer numbers

double avg(int a, int b, int c){

double d;d=((double)a+b+c)/3;

return d;}

This method takes multiple arguments and

returns single value

Method Signature—the method's name and the parameter types.

Average of three integer numbers

double avg(int a, int b, int c){

double d;d=((double)a+b+c)/3;

return d;}

This method takes multiple arguments and

returns single value

Calculate circle Area

double circleArea(float radius){ double area=Math.PI*radius*radius; return area;}

Calculate circle Area

double circleArea(float radius){ double area=Math.PI*radius*radius; return area;}

Method Signature—the method's name and the parameter types.

Convert Fahrenheit to Celsius

double convertFahToCel(double fah){double cel=(fah-32)*5/9;return cel;

}

Convert Fahrenheit to Celsius

double convertFahToCel(double fah){double cel=(fah-32)*5/9;return cel;

}

This method takes one argument and returns

single value

Check number is even or not

boolean checkEven(int n){

if(n%2==0){

return true;}else{

return false;}

}

Method Signature—the method's name and the parameter types.

Check number is even or not

boolean checkEven(int n){

if(n%2==0){

return true;}else{

return false;}

}

Check number is prime or notboolean isPrime(int n){ int i; for( i=2;i<n;i++) { if(n%i==0) { break; } }d if(n==i) { return true; } else { return false; }}

Reverse number

int reverseNumber(int n){

int x=0;for( ; n!=0 ; ){

int r=n%10;x=x*10+r;n=n/10;

} return x;}

Check number is palindrome or notboolean isPalindrome(int n){ int rev = reverseNumber(n) ; if(n==rev) { return true; } else { return false; }}

FOCUS ON ONE WORKWe need to focus on palindrome

not on reverse number code, this is a advantage of method.

Check number is palindrome or notboolean isPalindrome(int n){ int rev = reverseNumber(n) ; if(n==rev) { return true; } else { return false; }}

Using previous slide’s reverse number method

FOCUS ON ONE WORKWe need to focus on palindrome

not on reverse number code, this is a advantage of method.

Count number of digits in a number

This is Exercise

Sum of digits

This is Exercise

LCM(Lowest Common Multiple) of 2 numbers

long getLCM(int n1, int n2){ long answer=1; for(int i=2;n1!=1 && n2!=1;) { if(n1%i==0 && n2%i==0) { n1=n1/i; n2=n2/i; answer=answer*i; } else if(n1%i==0) { n1=n1/i; answer=answer*i; }

else if(n2%i==0) { n2=n2/i; answer=answer*i; } else { i++; }

}//end of for loop

answer=n1*n2*answer; return answer;

}//end of this method

LCM of 3 Numbers

long getLCM(int n1,int n2,int n3){ long result1 = getLCM(n1,n2);

long finalResult=getLCM((int) result1,n3);

return finalResult;}

LCM of 3 Numbers

long getLCM(int n1,int n2,int n3){ long result1 = getLCM(n1,n2);

long finalResult=getLCM((int) result1,n3);

return finalResult;}

Method overloading on getLCM() method differ by number of arguments

LCM of 3 Numbers

long getLCM(int n1,int n2,int n3){ long result1 = getLCM(n1,n2);

long finalResult=getLCM((int) result1,n3);

return finalResult;}

User Defined getLCM() 2 argument

method

LCM of 3 Numbers

long getLCM(int n1,int n2,int n3){ long result1 = getLCM(n1,n2);

long finalResult=getLCM((int) result1,n3);

return finalResult;}

LCM of 3 Numbers

long getLCM(int n1,int n2,int n3){ long result1 = getLCM(n1,n2);

long finalResult=getLCM((int) result1,n3);

return finalResult;}

LCM of 3 Numbers

long getLCM(int n1,int n2,int n3){ long result1 = getLCM(n1,n2);

long finalResult=getLCM((int) result1,n3);

return finalResult;} Narrowing

type conversion

LCM of 3 Numbers

long getLCM(int n1,int n2,int n3){ long result1 = getLCM(n1,n2);

long finalResult=getLCM((int) result1,n3);

return finalResult;}

LCM of 4 Numbers

long getLCM(int n1,int n2,int n3, int n4){ long result1 = getLCM(n1,n2,n3);

long finalResult=getLCM((int) result1,n4);

return finalResult;}

LCM of 4 Numbers

long getLCM(int n1,int n2,int n3, int n4){ long result1 = getLCM(n1,n2,n3);

long finalResult=getLCM((int) result1,n4);

return finalResult;}

Method overloading on getLCM() method differ by number of arguments

LCM of 4 Numbers

long getLCM(int n1,int n2,int n3, int n4){ long result1 = getLCM(n1,n2,n3);

long finalResult=getLCM((int) result1,n4);

return finalResult;}

User Defined getLCM() 3

arguments method

LCM of 4 Numbers

long getLCM(int n1,int n2,int n3, int n4){ long result1 = getLCM(n1,n2,n3);

long finalResult=getLCM((int) result1,n4);

return finalResult;}

LCM of 4 Numbers

long getLCM(int n1,int n2,int n3, int n4){ long result1 = getLCM(n1,n2,n3);

long finalResult=getLCM((int) result1,n4);

return finalResult;}

LCM of 4 Numbers

long getLCM(int n1,int n2,int n3, int n4){ long result1 = getLCM(n1,n2,n3);

long finalResult=getLCM((int) result1,n4);

return finalResult;} Narrowing

type conversion

LCM of 4 Numbers

long getLCM(int n1,int n2,int n3, int n4){ long result1 = getLCM(n1,n2,n3);

long finalResult=getLCM((int) result1,n4);

return finalResult;}

HCF(Highest Common Factor) of 2 numbers

int getHCF(int n1,int n2){

int lcmOfThese=(int) getLCM(n1,n2);long product=n1*n2;int hcfOfThese=(int)(product/lcmOfThese);return hcfOfThese;

}

HCF(Highest Common Factor) of 2 numbers

int getHCF(int n1,int n2){

int lcmOfThese=(int) getLCM(n1,n2);long product=n1*n2;int hcfOfThese=(int)(product/lcmOfThese);return hcfOfThese;

}

Narrowing type conversion /manual type

casting/ down casting

HCF(Highest Common Factor) of 2 numbers

int getHCF(int n1,int n2){

int lcmOfThese=(int) getLCM(n1,n2);long product=n1*n2;int hcfOfThese=(int)(product/lcmOfThese);return hcfOfThese;

}

HCF(Highest Common Factor) of 2 numbers

int getHCF(int n1,int n2){

int lcmOfThese=(int) getLCM(n1,n2);long product=n1*n2;int hcfOfThese=(int)(product/lcmOfThese);return hcfOfThese;

}

User Defined getLCM() method

Print prime numbers between 1 and 100

void printPrime1To100(){

for(int i=1;i<=100;i++){

if(isPrime(i)==true) { System.out.println(i); }

}}

User defined method

Print prime numbers between 200 and 500 which are Palindrome numbers too

This is exercise

Convert Decimal to XXXString convertDecimalToXXX(long n,int base){ StringBuilder sb = new StringBuilder(); for(;n!=0;n=n/base) { byte x= (byte)(n%base); if(x>=10) { char ch=' '; switch(x) { case 10:ch='A';break; case 11:ch='B';break; case 12:ch='C';break; case 13:ch='D';break; case 14:ch='E';break; case 15:ch='F';break; }

sb.append(ch); } else { sb.append(x); }}return String.valueOf(sb.reverse());}

Convert Decimal to Binary

String convertDecimalToBinary(long n){

int base=2;String

ans=convertDecimalToXXX(n,base);return ans;

}

Convert Decimal to OctalString convertDecimalToOctal(long n){ int octal_base=8; String ans=convertDecimalToXXX(n,octal_base); return ans;}

Convert Decimal to HexadecimalString convertDecimalToHexadecimal(long n){ int hex_base=16; String ans=convertDecimalToXXX(n,hex_base); return ans;}

Convert Binary to XXXlong convertXXXToDecimal(int base,String num){ StringBuilder sb = new StringBuilder(num); long sum=0,t=0; for(int i=sb.length()-1;sb.length()!=0;i--,t++) { Character x=sb.charAt(i); int y=x-48; sb=sb.deleteCharAt(i); double z=y*(Math.pow(base, t)); sum=sum+(long)z; } return sum;}

Convert Binary to Decimallong convertBinaryToDecimal(String binary_number){ int binary_base=2; long ans=convertXXXToDecimal(binary_base,binary_number); return ans;}

Convert Octal to Decimallong convertOctalToDecimal(String binary_number){ int binary_base=8; long ans=convertXXXToDecimal(binary_base,binary_number); return ans;}

Convert Hexadecimal to Decimallong convertHexToDecimal(String binary_number){

int binary_base=2;long ans=convertXXXToDecimal(binary_base,binary_number);return ans;

}

Convert Hexadecimal to Octal String convertHexToOctal(String hexNumber){

long decimal=convertHexToDecimal(hexNumber);String ans=convertDecimalToOctal(decimal);return ans;

}

Convert Hexadecimal to BinaryString convertHexToBinary(String hexNumber){

long decimal=convertHexToDecimal(hexNumber);String ans=convertDecimalToBinary(decimal);return ans;

}

Convert Octal to HexadecimalString convertOctalToHex(String octalNumber){ long decimal=convertOctalToDecimal(octalNumber); String ans=convertDecimalToHex(decimal); return ans;}

Convert Octal to BinaryString convertOctalToBinary(String octalNumber){ long decimal=convertOctalToDecimal(octalNumber); String ans=convertDecimalToBinary(decimal); return ans;}

Pass Array to Called Method

Print All elements of an Arrayvoid arrayTraversing(int arr[]){

for(int x:arr) {

System.out.println(x);}

}

Print All elements of an Arrayvoid arrayTraversing(int arr[]){

for(int x:arr) {

System.out.println(x);}

}

Print All elements of an Arrayvoid arrayTraversing(int arr[]){

for(int x:arr) {

System.out.println(x);}

}

Method Header /Method

Declaration

Sum of an Array

int sumOfArray(int arr[]){

int sum=0; for(int x:arr) { sum=sum+x; } return sum;}

Sum of an Array

int sumOfArray(int arr[]){

int sum=0; for(int x:arr) { sum=sum+x; } return sum;}

Taking an integer array and returning single value of int

data type

Average of an Array

float averageOfArray(int arr[]){

int sum=0;float avg;

for(int x:arr) { sum=sum+x; }

avg=(float)sum/arr.length; return avg;}

Maximum of an Arraybyte maximumOfArray(byte arr[]){

byte max=Byte.MIN_VALUE;for(byte x:arr)

{ if(x>max) { max=x; } } return max;}

Maximum of an Arraybyte maximumOfArray(byte arr[]){

byte max=Byte.MIN_VALUE;for(byte x:arr)

{ if(x>max) { max=x; } } return max;}

Minimum value of

byte is -128.

Minimum of an Arraybyte minimumOfArray(byte arr[]){

byte min=Byte.MAX_VALUE;for(byte x:arr)

{ if(x<min) { min=x; } } return min;}

Minimum of an Arraybyte minimumOfArray(byte arr[]){

byte min=Byte.MAX_VALUE;for(byte x:arr)

{ if(x<min) { min=x; } } return min;}

Wrapper class for byte data type

Minimum of an Arraybyte minimumOfArray(byte arr[]){

byte min=Byte.MAX_VALUE;for(byte x:arr)

{ if(x<min) { min=x; } } return min;}

Maximum value of

byte is 127.

Wrapper class for byte data type

Return Array from Called Method

Return prime numbers between 1 and 100

int[] getPrime1To100(){

int arr[] = new int[100];for(int i=1,j=1;i<=100;i++){

if(isPrime(i)==true) { arr[j]=i;

j++; }

}return arr;

}

Taking no parameters but returning an array.

A method cannot return multiple

values but it can return an array.

Complete Programpublic class function1 {

static int[] getPrime1To100(){

int arr[] = new int[100];for(int i=1,j=1;

i<=100;i++){

if(isPrime(i)==true) { arr[j]=i;

j++; }

} return arr;}

public static void main(String args[]) { int art[]=getPrime1To100(); for(int x:art) { if(x!=0) { System.out.println(x); } } }//end of main method}//end of public class

Array contains 100 values,

some are prime numbers other

are default values (0).

Reverse array

byte[] reverseArray(byte arr[]){

byte xyz[]=new byte[100];int i=arr.length-1;for(j=0; i>=0; i-- , j++){

xyz[i]=arr[j];}return xyz;

}

Returning byte array to calling method

This method takes an array(multiple byte

type values) and returns an

array(multiple byte type values).

Reverse array

byte[] reverseArray(byte arr[]){

byte xyz[]=new byte[100];int i=arr.length-1;for(j=0; i>=0; i-- , j++){

xyz[i]=arr[j];}return xyz;

}

Returning byte array to calling method

5 78 89 1655Original Array

This method takes an array(multiple byte

type values) and returns an

array(multiple byte type values).

Reverse array

byte[] reverseArray(byte arr[]){

byte xyz[]=new byte[100];int i=arr.length-1;for(j=0; i>=0; i-- , j++){

xyz[i]=arr[j];}return xyz;

}

Returning byte array to calling method

5 78 89 1655Original Array

1655 89 78 5Converted Array

This method takes an array(multiple byte

type values) and returns an

array(multiple byte type values).

Reverse array

byte[] reverseArray(byte arr[]){

byte xyz[]=new byte[100];int i=arr.length-1;for(j=0; i>=0; i-- , j++){

xyz[i]=arr[j];}return xyz;

}

Returning byte array to calling method

5 78 89 1655Original Array

1655 89 78 5Converted Array

This method takes an array(multiple byte

type values) and returns an

array(multiple byte type values).

Reverse digits of all array elements 1

ExampleOriginal Array

Converted Array

5 78 89 1655 464 782 346 75623

5 87 98 5561 464 287 643 32657

Reverse digits of all array elements 2

void reverseEveryArrayElement(int a[]){ for(int i=0;i<a.length;i++) { a[i]=reverseNumber(a[i]); }}

Example

Reverse digits of all array elements 2

void reverseEveryArrayElement(int a[]){ for(int i=0;i<a.length;i++) { a[i]=reverseNumber(a[i]); }}

Replacing every element of array with

its reverse number Example

Reverse digits of all array elements 2

void reverseEveryArrayElement(int a[]){ for(int i=0;i<a.length;i++) { a[i]=reverseNumber(a[i]); }}

This method is modifying

original array elements.

Replacing every element of array with

its reverse number Example

Complete Programpublic static void main(String args[]){

int a[]={5,78,89,1655,464,782,346,75623}; reverseEveryArrayElement(a);

arrayTraversing(a);}static void reverseEveryArrayElement(int a[]){

for(int i=0;i<a.length;i++) { a[i]=reverseNumber(a[i]); }}

Advantages of Using Methods

 

 

48

Advantages of Using Methods

1. To help make the program more understandable

 

 

48

Advantages of Using Methods

1. To help make the program more understandable

2. To modularize the tasks of the program– building blocks of the program

 

48

Advantages of Using Methods

1. To help make the program more understandable

2. To modularize the tasks of the program– building blocks of the program

3. Write a module once– those lines of source code are called multiple times

in the program

48

Advantages of Using Methods

     

49

Advantages of Using Methods

4. While working on one function, you can focus on just that part of the program – construct it, – debug it, – perfect it.

49

Advantages of Using Methods

4. While working on one function, you can focus on just that part of the program – construct it, – debug it, – perfect it.

5. Different people can work on different functions simultaneously.

49

Advantages of Using Methods

4. While working on one function, you can focus on just that part of the program – construct it, – debug it, – perfect it.

5. Different people can work on different functions simultaneously.

6. If a function is needed in more than one place in a program, or in different programs, you can write it once and use it many times

49

Thank You

top related