Uppgifter kurstillfälle två

Någon av uppgifterna 6-9 ska redovisas.

Uppgift 1

Skapa två dynamisk arrayer (vector) innehållandes ints. Ge den första innehållet 17, 42, 3, 5 den andra 13, 42, 76. Lägg in den andra arrayen mellan element 1 och 2 i den första. Skriv ut resultatet, för att vara säker på att det är korrekt.

Uppgift 2

Skapa en hashtabell med strängar som index och int som värde. Lägg in paren "hej" : 17, "hopp" : 21, "idi" : 42. Försäkra dig att indexeringen fungerar med utskrifter.

Uppgift 3

Gör en egen klass som kan innehålla en int och en sträng. Använde dem som element i en hashtabell. Kontrollera hur beteendet förändras beroende på om du överlagrar metodr som equals, hashCode och toString.

Uppgift 4

Skapa ett interface som innehåller en metod som skriver ut värdet av klassen till stderr. Skapa några klasser som uppfyller interfacet, t ex en klass med en int i, en med en sträng i etc. Kontrollera hur man kan hantera interfacet, skiljer det sig från hantering av klasser? Kan man använda interface i dynamiska arrayer (vector)?

Uppgift 5

Skapa en egen klass, innehållandes variabler som beskriver en cirkel (x, y, r, färg?), samt en metod som skriver ut den. Skapa en applet som som parametrar dels tar beskrivningar på cirklar, dels en parameter som talar om i vilken ordning cirklarna ska skrivas ut. T ex:
<applet code=uppgift3.class width=100 height=100>
<parameter name=cirkel1 value="(10,10),5,#000000")>
<parameter name=cirkel2 value="(10,150),17,#003300")>
<parameter name=skriv-ut value="cirkel1,cirkel2">
</applet>
Parametrarna behöver inte se ut precis så där, men principen med flera parametrar för definition och en för vad som ska skrivas ut ska följas.

Uppgift 6

Utöka uppgift 3 till att ta flera geometriska objekt. Gör en klass per geometriska objekt, och ett interface som är gemensamt och innehåller den/de metoder du tycker behövs för att hantera dem.

Uppgift 7

Utöka uppgift så att man även kan ange en URL (relativ går bra) till en bild som ska skrivas ut, och som ska hanteras som de andra objekten.

Uppgift 8

Börjar parametrarna bli lite väl krångliga? Gör i så fall ett eget filformat, med trevligare syntax. Låt sedan appleten få som parameter en URL (relativ duger gott) till en fil i detta filformat. T ex:

Geometriska filen:

<circle x=10 y=20 color=#000000 r=20>
<box x0=10 y0=20 x1=100 y1=50 color=#770010>

Appleten:

<applet code=uppgift8.class>
<parameter name=src value=fil.geo>
</applet>

Uppgift 9

Lägg till animationer.