2013-04-04 166 views
0

我目前还不熟悉Java并需要帮助。所以我想创建三种方法给我的排序代码,而不使用“静态”。我想使用的三种方法是myRandom,用于创建一个随机数组mySort,将数组从高到低排序,并使用printArray来打印数组。问题是我不知道如何在排序后打印数组。打印方法不起作用吗?这是我的代码到目前为止:如何在Java中使用静态方法或任何静态方法来打印返回方法的结果

import java.util.Arrays; 
import java.util.Random; 

public class SortAnimate6 
{ 
    public static void main(String args[]) 
    { 
     int numbers[] = new int[10]; 

     System.out.println("The array original:"); 



     System.out.println("The array generated:"); 


    } 

    public int [] myRandom (int[] numbers) 
    { 
     Random random = new Random(); 
     for(int i=0; i<numbers.length; i++) 
      numbers[i] = random.nextInt(20); 
     return numbers; 
    } 

    public void printArray(int[] list) 
    { 
     for (int counter = 0; counter < list.length; counter++) 
      System.out.print(list[counter] + " "); 
     System.out.println(); 
    } 

    public int[] mySort (int[] numbers) 
    { 
     for(int i=0; i<numbers.length; i++) 
     { 
      for(int j=0; j<numbers.length; j++) 
      { 
       if(numbers[i] < numbers[j]) 
       { 
        int temp = numbers[i]; 
        numbers[i] = numbers[j]; 
        numbers[j] = temp; 
       } 
      } 
     } 
     return numbers; 
    } 
} 

回答

0

方法printArray和mySort不是静态的,所以它们属于类。

我会给你答案的一部分....

SortAnimate6 me = new SortAnimate6(); 
System.out.println("The array original:"); 
me.printArray(numbers); 

希望这会给你一些东西去尝试,并坚持下去。

+0

不是静态的,使他们属于一个*实例。* – EJP 2013-04-05 00:09:10

1

查看您的代码后,您似乎需要调用您想要使用的方法。例如,如果你想打电话给我的那种,你需要通过键入

mySort(myPassedIntArrayVariable); 

您也可以使用你在设置您的主要方法内的新变量return语句的int数组到方法传递。例如,您可以将排序存储在新变量中,例如

int[] storageArray = mySort(myPassedIntArrayVariable); 

希望这有助于您。评论这是否对你的问题没有帮助。

+0

我有点明白了。我需要我的排序和打印方法调用到我的主要方法。了解。但是,我很困惑如何去做。我是否会进入mySort方法并创建类似“mySort(numbers [i]);” ?另外,我是否需要致电MyRandom? – Brit 2013-04-04 18:44:54

0

如果你不使用你提到的3种方法死板,那么你应该去为这个简单的代码

转换阵列

Arrays.asList(yourArray); 

Now simple use collections.sort(resultList) 

Lastly iterate on list to print each number with sysout . Thats it 
0

列出你不能调用任何的那些方法,而无需创建SortAnimate6的一个实例来调用它们。