我该怎么做才能执行此代码?我试图创建一个新类并用作驱动程序,但它没有工作,错误消息是cannot find count
。我感到困惑。有人可以帮我吗?
import java.util.Arrays;
import java.util.Scanner;
public class Lab7Part1
{
Scanner kb = new Scanner(System.in);
private static int[] a = {7, 8, 8, 3, 4, 9, 8, 7};
int sum=0;
int n=0;
double avg = sum/a.length;
int last=-1;
int max=0;
int min=Integer.MAX_VALUE;
int indexOfMax=-1;
public int count()
{
for(int n:a){
System.out.println(n);
System.out.println(",");
}//use a for-each statement to compute the number of values
System.out.println("The number of elements in int[] a is: " + n);
return n;
}
public int sum()
{
for(int n=0; n<a.length; n++){
sum += a[n];
}
System.out.println("The sum of elements in int[] a is: " + sum);
return sum;
}
public double average()
{
System.out.println("The avg of elements in int[] a is: " + avg);
return avg;
}
public int findLast(int key)
{
System.out.println("Enter an integer.");
int input = kb.nextInt();
for (int i=0; i<a.length; i++){
if(a[i]==input){
key = i;
System.out.println("The last index of " + input + " is: " + key);
}
else
System.out.println("The last index of " + input + " is: -1");
}
return key;
}
答案 0 :(得分:2)
您应该向您的类添加一个主方法,该方法将创建您的类的实例。
public static void main (String [] args)
{
Lab7Part1 lab = new Lab7Part1();
int cnt = lab.count();
...
}
答案 1 :(得分:0)
基本上你是缺少基本的。
1)你没有Main方法。
public static void main (String [] args){
2)没有对象创建。
Lab7Part1 lab = new Lab7Part1();
3)没有调用计数方法。
lab.count(){
//implementation of method count
}
请记住,JVM将始终从main()方法开始执行。
要访问类的方法,您需要创建类的对象的类实例。
当您隐式调用实例方法时,将启动要执行的实例方法。
答案 2 :(得分:0)
您也可以考虑将所有方法声明为静态,这样您就不必在运行程序之前创建类的实例。这也提醒您,您没有为您的实验室制作多个独特的解决方案 - 只需一个。 作为旁注,在返回值的方法中使用print语句通常也是不好的形式。打印是该方法的副作用,为了清楚起见,应仅关注返回值。可以使用主要方法进行打印。