2015-10-01 51 views
-2
public static int smallest() 
{ 
    int[] list = new int[]{10,12,15,20,50}; 
    int small = list[0]; 
    for(int q = 0; q < list.length; q++) 
    { 
     if(list[q] < small) 
     { 
     small = list[q]; 
     } 

    } 
return(small); 
} 

和我的司机是为什么我的驱动程序不工作?

Arrays object = new Arrays(); 
object.smallest(); 

我想我的主要问题是你如何在驱动程序中运行带有一个int类型的方法,因为它比打印不同。

+0

什么?我不明白你的问题。 –

+0

当我运行我的驱动程序时,不会返回任何内容 – buffalo

+0

您提供的代码不会编译。你认为应该返回什么?定义_returned_。 –

回答

1

首先,返回后删除括号,以便您的返回语句看起来像这样return small;。这是编译程序的第一步。其次,驱动程序的要点是测试你的实现(你的代码),或者以高效的方式使用它。在它的当前状态(可以被编译之后),你的方法将返回数组中的最小值。但是,您不应该创建一个Arrays对象来测试您的方法。如果你创建的类名为Arrays,那么代码将被编译。无论哪种方式删除此行:Arrays object = new Arrays();你不想调用一个对象的静态方法,而是调用Arrays.smallest()返回数组中的最小值。要打印出从你的方法返回的值,你必须有一个打印语句。您必须将以下内容之一添加到您的驱动程序中:无论是加:

System.out.println(Arrays.smallest()); 

或:

int smallest = Arrays.smallest(); 
    System.out.println(smallest); 

通过调用方法Arrays.smallest(),您在阵列中返回的最小值,因此完成你的任务。

免责声明: 使用静态方法是在这方面的做法不好,但你似乎是一个介绍性的计算机科学的学生,我不会进入创建对象,因为它会被混淆,而这在很早以前就为您。

相关问题