我编写了以下代码来解决问题 1,即简单地计算 3 和 5 的所有倍数的总和小于 1000。(我意识到我不需要构造函数,我只是为了练习而包含它)。
public class p1multiplesOf3and5 {
public p1multiplesOf3and5() {
//Constructor
}
public int sumArray(int[] Array){
int sum = 0;
for (int item: Array) {
sum += item;
}
return sum;
}
public int sumMultiples3and5(int limit) {
int[] multiples = new int[limit];
int count = 0;
for (int i=1; i<limit; i++){
if (i%3==0 || i%5==0) {
count++;
multiples[count] = i;
}
}
int total = sumArray(multiples);
return total;
}
public static void main(String args[]) {
p1multiplesOf3and5 x = new p1multiplesOf3and5();
int t = x.sumMultiples3and5(1000);
System.out.println("Total is: " + t);
}
}
我的问题基于我创建和使用的 sumArray 方法。我有使用 MATLAB 的背景,例如在某些项目中我创建了一个 +tools 文件夹,并将其作为函数保存在该文件夹中。任何时候我想使用它时,我都可以编写 tools.sumArray() 来调用它。
在 Java 中是否有类似的过程?因为我觉得这是一种我可能会在其他地方使用的方法,并且对于轻松访问它以及我创建的任何其他方法可能很有用。
最佳答案
基本上,您想要创建一个包含 sumArray() 的实用程序类。如果您只在一个项目中使用它,您可以创建一个名为 Utils 的类并添加一个静态方法来执行以下操作:
public class Utils {
public static int sumArray(int[] Array){
int sum = 0;
for (int item: Array) {
sum += item;
}
return sum;
}
}
以便您以后可以通过以下方式使用它:
int[] myArray = {1,2,3,4,5};
int sum = Utils.sumArray(myArray);
但是 jdk 8 已经有了类似的东西,所以你可以避免重新发明轮子:
Arrays.stream(myArray).sum();
关于java - 在 Java 项目中外部存储工具,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36166605/