【问题标题】:Easiest way to return double from another class从另一个类返回双精度的最简单方法
【发布时间】:2015-01-26 22:21:03
【问题描述】:

我希望根据输入双精度从另一个类返回双精度。 非常简单的项目结构示例的任何好的链接/示例将不胜感激。 我是否缺少清单中的某些内容。 IE。 活动一

import com.example.app.utils.getRhumbLineBearingUtil;


double tbearing =             getRhumbLineBearing(alata,alona,alatb,alonb);

double recipbearing=getRhumbLineBearing(alatb, alonb, alata, alona);

活动 2 导入 com.example.app.utils.getRhumbLineBearingUtil;

 double lattocbearing = getRhumbLineBearing(lat,lon,alatc,alonc);

 double bcbearing=getRhumbLineBearing(alatb, alonb, alatc, alonc);

(我在许多活动中执行此操作,有 15 种不同的回报,其中一些输入即 gps 点快速变化)

类 包 com.example.app.utils;

public class getRhumbLineBearingUtil
{


public double getRhumbLineBearing(double $lat1, double $lon1, double $lat2, double $lon2)
  {Yada=trueRhumb  ;
double Bearing=yada;
Return (bearing);
      }
}

我对作为初始轴承听证会的 BearingTo 不感兴趣。

【问题讨论】:

  • 我不明白你的意思。类不返回值。方法可以。你想做什么?
  • 让另一个类中的方法返回一个值。这可能吗?或者轻松取回它,否则我可能不得不将此方法放入我使用它的每个类中,这最终会变得混乱。
  • 当然是。你需要类实例(对象)还是静态?

标签: android class structure


【解决方案1】:

您应该先学习一点 Java 编程,然后再升级到 android。你不能那样做。试试这个:

Class GetRhumbLineBearingUtil {    

    public static double getRhumbLineBearing(double lat1, double lon1, double lat2, double lon2) {
        return lat1 + lon1;
    }
}

然后在另一个类中,在导入之后,无论您想使用该方法做什么,都可以这样称呼它:

double lattocbearing = GetRhumbLineBearingUtil.getRhumbLineBearing(alatb, alonb, alata, alona);

这里的一些注意事项:静态方法可以通过 ClassName.methodName 访问

这是我从问题中理解的。现在,如果您想在活动之间交换数据,那就另当别论了,您可以使用意图。

一些注意事项:

  • 类名以大写开头
  • 类、方法和方法参数应具有正确的名称/含义,以便更容易理解正在执行的操作。
  • 变量名以小写开头
  • Java中没有$variable,一切都是按值传递的
  • 如果您想返回存储在 GetRhumbLineBearingUtil 类的变量中的某个值,您还需要将该变量设为静态。

【讨论】:

  • 我正在学习,该应用程序可以运行,但我正在努力使代码和结构更具可读性和效率。昨天我花了很长时间研究,最后五分钟自嘲。如此简单。
【解决方案2】:

如果你的意思是如何在两个活动之间交换数据并且你想传递一些双精度值,你应该使用方法putExtra(String name, double value)putExtra(String name, double[] value)并从第二个活动onCreate(Bundle savedInstanceState)方法中获取它们。

否则使用包含您的方法代码的静态方法。

public class Utils {

public static double getRhumbLineBearing(double latA, double lonA, double latB, double lonB) {
    [your code]
}
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-10-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-06
    • 2020-06-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多