Java.lang.Math.copySign() Method



The java.lang.Math.copySign(float magnitude, float sign) returns the first floating-point argument with the sign of the second floating-point argument.


Following is the declaration for java.lang.Math.copySign() method

public static double copySign(float magnitude, float sign)


  • magnitude -- the parameter providing the magnitude of the result

  • sign -- the parameter providing the sign of the result

Return Value

This method returns a value with the magnitude of magnitude and the sign of sign.


  • NA


The following example shows the usage of lang.Math.copySign() method.

package com.tutorialspoint;

import java.lang.*;

public class MathDemo {

   public static void main(String[] args) {

      // get two float numbers
      float x = 125.9f;
      float y = -0.4873f;

      // print a double with the magnitude of x and the sign of y
      System.out.println("Math.copySign(" + x + "," + y + ")="
              + Math.copySign(x, y));

      // print a double with the magnitude of y and the sign of x
      System.out.println("Math.copySign(" + y + "," + x + ")="
              + Math.copySign(y, x));


Let us compile and run the above program, this will produce the following result:

Math.copySign(125.9f, -0.4873f)=-125.9
Math.copySign(-0.4873f, 125.9f)=0.4873