Java 实现排序和函数调用
我想对一组数字进行排序Java 实现排序和函数调用,java,Java,我想对一组数字进行排序 public class Sort { public static void main(String args[]){ int [] array = new int[10]; for ( int i = 0 ; i < array.length ; i++ ) { array[i] = ((int)(Math.random()*100+1)); } Arrays.sort( array ); for (
public class Sort {
public static void main(String args[]){
int [] array = new int[10];
for ( int i = 0 ; i < array.length ; i++ ) {
array[i] = ((int)(Math.random()*100+1));
}
Arrays.sort( array );
for ( int i = 0 ; i < array.length ; i++ ) {
System.out.println(array[i]);
}
}
}
公共类排序{
公共静态void main(字符串参数[]){
int[]数组=新的int[10];
for(int i=0;i
它工作得很好,然后我试着把它放在函数中,并从主函数调用它
public class Sort {
public void Implement () {
int [] array = new int[10];
for ( int i = 0 ; i < array.length ; i++ ) {
array[i] = ((int)(Math.random()*100+1));
}
Arrays.sort( array );
}
}
public static void main(String[] args){
Sort s = new Sort();
s.Implement (array);
for (int i = 0 ; i < array.length ; i++) {
System.out.println(array[i]);
}
}
公共类排序{
公共无效工具(){
int[]数组=新的int[10];
for(int i=0;i
然后,尽管for循环是正确的,但所有错误都会出现在for循环中,这里的问题是什么?
Implement()
method的签名(形式参数)在其定义中是void
。但是,您正在尝试将一个实际参数传递给main()
中的方法,该参数在示例中是array
。这就是为什么会出现编译时错误。问题在于使用s.Implement(array)代码>
以下是代码中的错误:
Sort.Implement()
不需要任何参数,但您正在传递一个参数
- 在线
s.Implement(数组)代码>,您尚未创建变量数组
。但是你在这一行和后一行中使用它
下面是一个正确的工作示例。请看:
类排序
{
公共int[]实现(){
int[]数组=新的int[10];
for(int i=0;i
备注:根据您的代码和使用的方法,您似乎是编程新手。所以先花点时间来理解概念 您需要将array
变量从main
传递到s.implement(array)
或者从s.implement
返回它,我在写这行的s.implement(array)时以为我传递了它;'确实存在,但是数组
变量本身不存在于主
范围中,因此需要声明它
class Sort
{
public int[] Implement () {
int [] array = new int[10];
for ( int i = 0 ; i < array.length ; i++ ) {
array[i] = ((int)(Math.random()*100+1));
}
Arrays.sort( array );
return array;
}
}
class Test
{
public static void main(String[] args){
Sort s = new Sort();
int[] array = s.Implement ();
for (int i = 0 ; i < array.length ; i++) {
System.out.println(array[i]);
}
}
}