在Java中创建多变量函数

时间:2016-07-14 20:33:59

标签: java function

我正在尝试创建一个我可以在我的main方法中引用的函数。使用双变量输入X和字符串输入Y,我希望该函数执行以下操作:

 BigDecimal bdX = new BigDecimal(X);
 String strX = String.valueOf(bdX.doubleValue());
 strX = strX.replaceAll("E", " x 10^");

 System.out.println("\nOutput = " + strX + Y);

在python中你可以像这样定义一个函数:

def FunctionName(X,Y) {
//tasks
}

我如何用Java做到这一点?我该怎么称呼呢?谢谢!

2 个答案:

答案 0 :(得分:0)

首先,您需要将double转换为String。如果你想返回String那么:

public static String function(double x, String y) { 
    String strX = Double.toString(x); //String.valueOf(x) would have worked fine too
    strX = strX.replaceAll("E", " x 10^");
    return strX + y;
}

或者,如果您只想将其打印出来并且不希望它返回String,那么

public static void function(double x, String y) { 
    String strX = Double.toString(x);
    strX = strX.replaceAll("E", " x 10^");
    System.out.println("\nOutput = " + strX + Y);
}

然后你将在main方法中调用上面的方法。

ps:我已将double转换为String,因为为什么要先采取额外步骤将其转换为BigDecimal,然后再将其转换为String

答案 1 :(得分:0)

我不知道我是否理解你,但我试着给你留言^^

如果要从main方法调用方法,则必须使方法保持静态。

看起来像是:

public static void main(String args) {
    yourMethod(10.0, "Test"); // calls your method with example params
}

public static void yourMethod(double X, String Y) {
    // Your tasks
    BigDecimal bdX = new BigDecimal(X);
    String strX = String.valueOf(bdX.doubleValue());
    strX = strX.replaceAll("E", " x 10^");
    System.out.println("\nOutput = " + strX + Y);
}