Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 解决了如何编写从低到高对数组中的数字进行排序的方法_Java_Arrays - Fatal编程技术网

Java 解决了如何编写从低到高对数组中的数字进行排序的方法

Java 解决了如何编写从低到高对数组中的数字进行排序的方法,java,arrays,Java,Arrays,此代码中有一个错误: ArraySortSearch.java:12:错误:不兼容的类型:不能为int 转换为int[] int[]mySorted=排序(myNumbers); ^ArraySortSearch.java:56:错误:不兼容的类型:int[]无法转换为int 返回a 我不久前才开始学习Java。这太难了:(我怎么解决这个问题 //not allowed to use import java.util public class ArraySortSearch { // shoul

此代码中有一个错误:

ArraySortSearch.java:12:错误:不兼容的类型:不能为int 转换为int[] int[]mySorted=排序(myNumbers); ^ArraySortSearch.java:56:错误:不兼容的类型:int[]无法转换为int 返回a

我不久前才开始学习Java。这太难了:(我怎么解决这个问题

//not allowed to use import java.util
public class ArraySortSearch { // shouldn't be changed from here

public static void main(String[] args) {


    int [] myNumbers = {15,12,23,0,10,55,2,78,9,6,1,4,11};

    System.out.println("Looking for numer 55: ");
    System.out.println(find(myNumbers,55));

    System.out.println("Sorted Array:");
    int [] mySorted = sort(myNumbers);

    for(int i = 0; i< mySorted.length; i++) {
        System.out.println(mySorted[i]);

        }

} //to here

    public static int find(int [] a, int number){ //this method works

        for(int i=0; i<a.length; i++){

            if(a[i]==number){

                return i;

            }

            else{
                continue;
            }
        }

        return -1;

    }


    public static int sort(int [] a){ //this method is the problem

        for(int b=0; b<a.length; b++){

            for(int i =1; i<a.length; i++){

                if(a[b]<a[i]){
                    int temp = a[b];
                    a[b] = a[i];
                    a[i] = temp;
                }

            }

        }
        return a;
    }
//不允许使用导入java.util
不应从此处更改公共类ArraySortSearch{//
公共静态void main(字符串[]args){
int[]myNumbers={15,12,23,0,10,55,2,78,9,6,1,4,11};
System.out.println(“查找数字55:”);
System.out.println(find(mynumber,55));
System.out.println(“排序数组:”);
int[]mySorted=排序(myNumbers);
for(int i=0;i对于(int i=0;i您的返回类型是
int
,但
a
是一个数组。由于您正在对数组进行排序,因此只需将返回类型设置为
void
,无需返回任何内容


另外,让外循环转到
a.length-1
,让内循环从
b+1

public static int sort
应该是
public static int[]sort
您的排序方法是返回一个整数,但您返回的是一个数组。将您的方法更改为
public static int[]sort
谢谢它解决了编译问题!谢谢你在循环中发现了问题。这听起来一定很愚蠢,但我不太确定我是否正确。public static int[]sort(int[]a){//这个方法是(int b=0;b)的问题