Hello stackoverflow社区。我需要帮助,我是JAVA的新手。我创造了这个:
public static Modulis[] surasti_visus (Modulis G[], int n, int minimalus) {
Modulis X[] = new Modulis[n];
Modulis min = minimalus;
for (int i=1; i<n; i++)
if(min.gautiKreditus() < G[i].gautiKreditus()) X[i] = G[i];
return X;
}
为了找到所有更大的值,然后minimalus并将它们写入新数组。但是由于这一行我得到了错误:
Modulis min = minimalus;
错误是:不兼容的类型;模数;发现int; 有什么问题请帮忙!
答案 0 :(得分:3)
问题:你试图将int值保存到Modulis类型,在Java中是不可能的,你需要使用
public static Modulis[] surasti_visus (Modulis G[], int n, Modulis minimalus) {
Modulis X[] = new Modulis[n];
for (int i=1; i<n; i++)
if(minimalus.gautiKreditus() < G[i].gautiKreditus()) X[i] = G[i];
return X;
}
或
public static Modulis[] surasti_visus (Modulis G[], int n, int minimalus) {
Modulis X[] = new Modulis[n];
Modulis min = new Modulis(minimalus);
for (int i=1; i<n; i++)
if(min.gautiKreditus() < G[i].gautiKreditus()) X[i] = G[i];
return X;
}
或
public static Modulis[] surasti_visus (Modulis G[], int n, int minimalus) {
Modulis X[] = new Modulis[n];
for (int i=1; i<n; i++)
if(minimalus < G[i].gautiKreditus()) X[i] = G[i];
return X;
}
答案 1 :(得分:3)
根据您的评论,我猜测Modulis.gautiKreditus()
会返回int
,您打算将其与min
值进行比较。因此,只需将min
声明为int(或者根本不要声明它,因为您只是使用传入的值):
public static Modulis[] surasti_visus (Modulis G[], int n, int minimalus) {
Modulis X[] = new Modulis[n];
for (int i=1; i<n; i++)
if(minimalus < G[i].gautiKreditus()) X[i] = G[i];
return X;
}
现在您将int
与int
进行比较,并且无需将最小值放入另一个变量中。<\ n / p>