尝试调用同一 class 中的方法无效 (java)
Attempts to call a method in the same class not working (java)
我正在创建一个随机数生成器,然后将数字从大到小排序。最初它有效,但后来我改变了一些东西。据我所知,我撤消了所有更改 (ctrl + z),但现在我在尝试调用这些方法时遇到了错误。这可能是一个非常业余的问题,但我还没有找到答案。我遇到的错误是 "method in class cannot be applied to given types"
这是我的代码:
public class RandomMath {
public static void main(String[] args) {
String bigger = bigger(); /*ERROR HERE*/
System.out.println(bigger);
}
//create method for generating random numbers
public static int generator(int n){
Random randomGen = new Random();
//set max int to 10000 as generator works between 0 and n-1
for(int i=0; i<1; i++){
n = randomGen.nextInt(10000);
// exclude 1111, 2222, 3333, 4444, 5555, 6666, 7777, 8888, 9999, 0000
if((n==1111 || n==2222 || n==3333 || n ==4444 || n==5555)
||(n==6666 || n==7777 || n==8888 || n==9999 || n==0000)){
i--;
}
}
return n;
}
//create method for denoting the bigger number
public static String bigger(int generated){
generated = generator(); /*ERROR HERE*/
System.out.println(generated);
int[] times = new int[10];
while (generated != 0) {
int val = generated % 10;
times[val]++;
generated /= 10;
}
String bigger = "";
for (int i = 9; i >= 0; i--) {
for (int j = 0; j < times[i]; j++) {
bigger += i;
}
}
return bigger;
}
}
您还没有定义方法 bigger()
,只定义了 bigger(int generated)
。因此,您必须使用整数参数调用 bigger
方法。
我正在创建一个随机数生成器,然后将数字从大到小排序。最初它有效,但后来我改变了一些东西。据我所知,我撤消了所有更改 (ctrl + z),但现在我在尝试调用这些方法时遇到了错误。这可能是一个非常业余的问题,但我还没有找到答案。我遇到的错误是 "method in class cannot be applied to given types"
这是我的代码:
public class RandomMath {
public static void main(String[] args) {
String bigger = bigger(); /*ERROR HERE*/
System.out.println(bigger);
}
//create method for generating random numbers
public static int generator(int n){
Random randomGen = new Random();
//set max int to 10000 as generator works between 0 and n-1
for(int i=0; i<1; i++){
n = randomGen.nextInt(10000);
// exclude 1111, 2222, 3333, 4444, 5555, 6666, 7777, 8888, 9999, 0000
if((n==1111 || n==2222 || n==3333 || n ==4444 || n==5555)
||(n==6666 || n==7777 || n==8888 || n==9999 || n==0000)){
i--;
}
}
return n;
}
//create method for denoting the bigger number
public static String bigger(int generated){
generated = generator(); /*ERROR HERE*/
System.out.println(generated);
int[] times = new int[10];
while (generated != 0) {
int val = generated % 10;
times[val]++;
generated /= 10;
}
String bigger = "";
for (int i = 9; i >= 0; i--) {
for (int j = 0; j < times[i]; j++) {
bigger += i;
}
}
return bigger;
}
}
您还没有定义方法 bigger()
,只定义了 bigger(int generated)
。因此,您必须使用整数参数调用 bigger
方法。