我正在使用java bluejay试图解决递归问题。
问题:给出一系列自然数(高于0) 和一个int,该方法需要告诉数组是否包含一种总结数字以获得给定int的方法。 例如{4,5} int = 13>> 4 + 4 + 5 = 13 =真 例如{4,5} int = 3>>>假的。
第二个问题是,当我使用我的主要时,它说“找不到符号 - 方法 isSumOf(int [],int)虽然我确实有这种方法......
这是我的课程:
public class Ex14
{
static int allways;
static int index = -1;
public static boolean isSumOf(int[] s, int n){
if(index == -1) index = s.length - 1;
return isSumOf(s, n, index);
}
private static boolean isSumOf(int[] s, int n, int index){
int temp = s[index];
if(allways == n) {return true;}
if(allways > n && index != 0) {allways -= temp + s[index - 1];
if(allways / s[index - 1] == s.length) index --;}
if(allways > n && index == 0) return false;
if(allways < n) allways += temp; return isSumOf(s, n);
}
}
我的主要课程:
public class bdikot
{
public static void main(String[] args){
int [] hi= new int[1];
hi[0]=3;
System.out.println(isSumOf(hi,7));}
}
先谢谢Asaf :-)。
答案 0 :(得分:0)
对于你的第二个问题,我认为你需要改变:
{
"serial": "10002000",
"observations": [
"8": {
"d": "dimension1",
"v": "somevalue",
},
"17": {
"d": "dimension2",
"v": "anothervalue",
},
],
}
由于System.out.println(Ex14.isSumOf(hi,7));
存在于与主方法不同的类中。
您也可以查看:
https://en.wikipedia.org/wiki/Programming_style
https://google.github.io/styleguide/javaguide.html
由于以下这些将使您的代码更容易为其他人阅读。