android中的数学函数

android中的数学函数,android,function,math,Android,Function,Math,我试图在android中创建一个数学函数,但我遇到了很多问题 首先,我不知道如何准确地声明它,我的代码: double x; double y = Math.abs(x) - Math.cos(x); 我想声明的函数是f(x)=x-cos(x),但是我得到一个错误,x没有初始化,但是我想避免键入x=0之类的,因为以后我想更改x的值 其次,我不知道以后如何调用我的函数来更改它的值e.xf(y)或f(o),并且x将被另一个数字替换。在Java中不能这样做。必须将函数封装在类/方法中,如: 静态 p

我试图在android中创建一个数学函数,但我遇到了很多问题

首先,我不知道如何准确地声明它,我的代码:

double x;
double y = Math.abs(x) - Math.cos(x);
我想声明的函数是
f(x)=x-cos(x)
,但是我得到一个错误,x没有初始化,但是我想避免键入
x=0之类的,因为以后我想更改x的值


其次,我不知道以后如何调用我的函数来更改它的值e.xf(y)或f(o),并且
x
将被另一个数字替换。

在Java中不能这样做。必须将函数封装在类/方法中,如:

静态

public class MyFunction {

  public static double call(double x) {
     return Math.abs(x) - Math.cos(x);
  }
}

double result = MyFunction.call(4);
public class MyFunction {

  public double call(double x) {
     return Math.abs(x) - Math.cos(x);
  }
}

double result = new MyFunction().call(4);
非静态

public class MyFunction {

  public static double call(double x) {
     return Math.abs(x) - Math.cos(x);
  }
}

double result = MyFunction.call(4);
public class MyFunction {

  public double call(double x) {
     return Math.abs(x) - Math.cos(x);
  }
}

double result = new MyFunction().call(4);

您可以这样声明函数(请原谅,如果我弄乱了语法,我已经有一段时间没有使用java了)

在以后的代码中,您可以这样使用它:

double num = 10.5;
double f = calculate(num);
继续你需要的一切。 我建议观看基本java教程,

例如,或者任何适合你需要的东西。如果您不熟悉函数的概念,首先需要了解编程的所有基础知识。

我更担心第二个问题,因此请首先关注第二个问题。因此,@bigdestroyer将函数全球化的方式对我来说似乎不错,无论定义函数本身如何。我不太懂java,但我想关于定义函数,我真的知道的不多。这很好,尽管你知道你也必须使静态类MyFunction,至少在android中是这样。你可以使方法非静态。事实上,我更喜欢非静态版本。老兄,你能像c#那样做扩展方法吗?比如,将函数定义为
static T DoSomething(这个字符串是someString,int x)
,然后可以像
string str=“hello world”那样调用它;str.DoSomething(135)?如果是这样的话,如果他经常在数学中使用double,他肯定可以用double,我想他会的,这在Java中是不可能的。