import java.util.Scanner;
public class merge_sort
{
public static void main(String[] args)
{
Scanner input= new Scanner (System.in);
System.out.println("Hello, how many numbers there should be in the array?");
int Size=input.nextInt();
Double A []=new Double [Size] ;
System.out.println("Please enter "+ (Size+1)+" real numbers");
for (int z=0;z<Size;z++)
A[z]=input.nextDouble();
int p=0,q=(Size/2+1),r=(Size-1);//assuming that the array with even length.
int L []=new int [4] ;//the left side, sorted array
int R []=new int [4] ;//the right side, sorted array
L[0]=7;L[1]=6;L[2]=2;L[3]=1;
R[0]=5;R[1]=4;R[2]=3;R[3]=8;
for(int i=0;i<4;i++)
System.out.print(L[i]);
System.out.println("");
for(int j=0;j<4;j++)
System.out.print(R[j]);
merge(L,R);
}
Double Ich habe einen Fehler in dieser Zeile des Codes:Typenkonflikt: kann nicht von Doppel konvertiert
A[z]=input.nextDouble();
Der Fehler ist: Typenkonflikt: kann nicht von Doppel zu Double konvertieren
Ich bin stecken paar Stunden, kann mir jemand dabei helfen?
überprüfen Sie bitte, welche Version von Java Sie verwenden .. Bitte fügen Sie Fehler 'Stack-Trace' hinzu, um das Problem zu identifizieren, da Autoboxing automatisch nach Java V1.5 erfolgt. @Nahorai –
Es funktioniert gut für mich (Java v_1.7) wegen Autoboxing-Funktion. –
Der Compilerfehler ist ziemlich klar. Fall ist wichtig, "Double" ist eine Wrapper-Klasse für den primitiven Typ "double", sie sind nicht identisch. Ändern Sie entweder Ihr Array: 'double A [] = new double [Size]' oder ändern Sie die Zuweisung: 'A [z] = new Double (input.nextDouble());' –