[英]Making a multivariable function in Java
我正在尝试创建一个我可以在我的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做到这一点? 我该怎么称呼呢? 谢谢!
首先,您需要将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
。
我不知道我是否理解你,但我试着给你留言^^
如果要从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);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.