Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.
4.4.
Hallo miteinander,
mein Problem lautet: Wie bringe ich mein Programm dazu das zweite Element zu löschen, wenn es mit dem ersten Element addiert wurde.
Also das bei ns = {1, 1, 3, 4}
Herauskommt ns = {2, 3, 4}
und nicht wie es bei mir momentan der Fall ist
ns = {2, 1, 3, 4}
Ich dachte immer das heißt Konvertierung. Aber 1) ist es kein int, sondern ein int und 2) braucht man dafür auch wirklich keine Imports.
Das Problem ist eher folgendes:
input = {2,2,4,5,6,7,8,8}
output= {4,4,5,6,7,16}
Was sehen wir? Zwei Arrays mit einer unterschiedlichen Länge. Und wie bekommt man das hin ohne temp? Richtig, meiner Meinung nach gar nicht, da wir keine Array-Funktionen haben.
Ist es logischerweise nicht, nur ein Beispiel. Das Output ist natürlich ein String
Ich glaube dann klingelt mir auch, wie ihr das ohne ein temporäres Array machen wollt, aber ob das jetzt so zwingend besser ist? Bei der Übung ist es doch im Grunde egal, Hauptsache der Kram funktioniert…
aber ich muss doch java.util.Arrays improtieren um überhaupt den Array als String ausgeben zu können. Weil sonst mekert er jedes mal, das er einen String ausgegeben haben möchte und wenn ich ihm merge wiedergebe kommt outofbounds.
Du darfst afaik keine Imports verwenden. Ich brauchte keinen. Um einen Array als String auszugeben, reicht es schon, einen String mit den Werten des Arrays zu füllen. Da benötigt man die Utils nicht zwingend
Um das mal aufzulösen:
Imports aus der Java-API sind jederzeit erlaubt, sofern diese nicht, wie z.B. bei Aufgabe 3.5 explizit verboten sind.
Es schadet aber auch nicht, sowas selbst zu programmieren.
Denn, stellt euch vor, auch java.util.Arrays.toString(int a) ist in Java programmiert! (und kann sich natürlich nicht selbst verwenden…)