Föreläsning 5 Arrayer & ArrayList Hur man använder API:n

Slides:



Advertisements
Liknande presentationer
Interface.  Interface är en datatyp och har alltså egen syntax och en hel del egna regler för vad arv från interface innebär.  Interface är renodlad.
Advertisements

Array Skriv ett program som frågar följande: ”Hur många tal vill du mata in?” användaren matat in ett tal t.ex n. då frågar programmet n ggr följande.
Algoritmer och data strukturer -Länkade listor
Programmeringsteknik
Programmeringsteknik Föreläsning 6 Skolan för Datavetenskap och kommunikation.
Föreläsning 3 Repetition Operatorer Styrstrukturer Deklaration och anrop av metoder.
Föreläsning 6 Länkade lista Komplexitet Linjärsökning & binärsökning
Metoder i java Det finns två typer av metoder i java
Övning5 Så här ska man tänka när man löser uppgift 1 på tentan lite grafik, så här söker man genom en lista så här läser man från en fil i java lösa uppgift.
Välkommen Vahid Mosavat
Programmeringsteknik för K och Media
Programmeringsteknik för K och Media
Programmeringsteknik för K och Media
Föreläsning 13 Allt om tentan. Sistaminutenhjälp: På fredag 17 december kl 12 sitter Linda i kemi-fiket och svarar på frågor.
Swing Grafik delen i Java kallas för Swing. Swing är stort; ca 800 klasser i 16 paket. Swing är en utveckling av AWT (Abstarct Window Toolkit). AWT var.
1 ITK:P1 Föreläsning 4 Grafiska gränssnitt och händelsehantering DSV Peter Mozelius.
1 Föreläsning 3 Datalogi för E1 / 2D1343 Repetition List List operationer Stränghantering For-slingor.
Föreläsning 8 Appletprogram/fristående grafiska program Rita linjer, rektanglar mm Skriva text Byta färg Appletprogram html.
Föreläsning 6 Referenser Objekt som parametrar public/private Klassvariabler och klassmetoder.
Föreläsning 2 Primitiva datatyper Variabler och konstanter Tilldelning Inläsning Operatorer Villkorssatsen if Slingor: while och for.
Hashing / Hash tabeller -- Kapitel 20. Hash? Varför en annan datastruktur? Konstant tid för både insert- och find- operationer.
1 Föreläsning 6 Klass Object, instans av klass public/private Klassvariabler och klassmetoder.
1 Föreläsning 8 Grafik AWT. 2 Grafik Frame använder man för att skapa ett fönster Button använder man om man vill ha en knapp att trycka på Canvas är.
Alice in Action with Java
i olika programmeringsspråk
Föreläsning 4, Kapitel 4 Gruppera objekt Kursbok: “Objects First with Java - A Practical Introduction using BlueJ”, David J. Barnes & Michael Kölling.
Föreläsning 13 Polymorfism, Paket och JAR-filer. Polymorfism Ordet härstammar från grekiskan Poly – många Morf – form Polymorf – många former Någonting.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 7 ( ) INNEHÅLL: -Klasser och instansvariabler -Tabeller av klassobjekt.
Föreläsning 11 Arrayer.
OOP F4:1 Marie Olsson OOP Objekt-orienterad programmering Föreläsning 4 Metoder klass-metoder instans-metoder.
Programmering i C# 3. Klasser.
PROCESSPROGRAMMERING
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 6 ( ) INNEHÅLL: -Mera om tabeller.
Föreläsning 2 Kort Översikt Över Javaspråket. Källkodsformat Unicode används åäöμψζ tillåtna Inte alla miljöer klarar av det Källkod Bytekod Java VM för.
1 ITK:P1 Föreläsning 7 Algoritmer och datastrukturer DSV Marie Olsson.
Vektorer (klassen Vector) Sortering
Programmeringsteknik för Media1 & K1
OOP F6:1 Stefan Möller OOP Objekt-orienterad programmering Föreläsning 6 Mer om klasser och objekt Hantera många objekt ArrayList toString() – metoden.
Metoder och slingor Metoder och dess typ Slingor med while och for-satser.
1 Föreläsning 7 Repetition Instansvariabler och klassvariabler Klassmetoder och Instansmetoder.
Föreläsning 8 Arv och abstrakta klasser. Arv Definierar en klass utifrån en redan existerande klass Den nya klassen utökar den ärvda klassen ( extends.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 7 ( ) INNEHÅLL: -Metoder -Lokala variabler -Mera om klasser: -Nyckelorden.
1 Föreläsning 6 Programmeringsteknik och Matlab 2D1312/2D1305 Metoder & parametrar Array API och klassen ArrayList.
1 Föreläsning 5 Programmeringsteknik och Matlab 2D1312/2D1305 Repetition Metoder Array API och klassen ArrayList.
Föreläsning 10 Stränghantering.
Föreläsning 1 Reserverade ord Javas API Identifierare Litteraler Variabler Kompilering och interpretering.
Introduktion till klasser, objekt och BlueJ Kursbok: “Objects First with Java - A Practical Introduction using BlueJ”, David J. Barnes & Michael Kölling.
Föreläsning 12 Om slutprovet. Repetition –deklaration av variabler –skapande av objekt (instansiering) –Vektorer och Vector-klassen –Klasser –Instans-/klassvariabler.
Föreläsning 4 Klasser Och Objekt.
INTRODUKTION TILL PROGRAMMERING
Föreläsning 13 Appletprogram/fristående grafiska program Arv Rita linjer, rektanglar mm Skriva text, byta färg Appletprogram & HTML Grafiska användargränssnitt.
Föreläsning 7 Programmeringsteknik och Matlab DD1315 Kommandotolk parametrar Klass Instans Metod konstruktor.
Föreläsning 9 Arv kap 8.1 Interface kap 9.2 Grafiska användargränssnitt (GUI) kap 10.
7. Delegerare och notifierare
OOP F5:1 Stefan Möller OOP Objekt-orienterad programmering Föreläsning 5 Klasser och objekt Skapa objekt - new Referenser Konstruktorer Inkapsling.
Föreläsning 5 Objekt Klasser Konstruktorer Metoder Minnesbilder av objekt.
Programmeringsteknik för K och Media
Föreläsning 5 Klasser och instanser
Föreläsning 7 programmeringsteknik och Matlab 2D1312/2D1305 Metoddeklaration och parametrar Arrayer och ArrayList.
-Repetition -Variabler -Primitiva typer (+ boolean) -Operatörer +, ++, --, -Typ konvertering -Wrapper klasser -Jämförelse operatörer,(==, =,,!=, !) -String.
Föreläsning 7 Repetition Sammansatta datatyper –vektor (hakvektor, array) –matris.
1 Föreläsning 2 Reserverade ord Javas API Identifierare Litteraler Variabler Kompilering och interpretering.
OOP&M - teori1 OOP&M – Föreläsning 5 kap 8-13 Operatorer,typkonvertering, booleska operatorer, if och else.
Föreläsning4 Repetition slingor Metoder. while-sats består av följande delar: 1. while 2. Villkor-sats (condition) 3. uttryck (statement) while-sats int.
1 Föreläsning 6 Repetition på metoder Referenser Objekt som parametrar public/private Klassvariabler och klassmetoder.
1 Föreläsning 9 Object cast Klassen Vector Skillnad mellan Arrayer och Vector.
OOP&M - teori1 OOP – Föreläsning 7 (Sista oop I) Konstruktioner för att hantera upprepningar Kapitel 11.
1 Föreläsning 4 Metoder & parametrar Array API och klassen ArrayList.
Malmö högskola Rolf Axelsson 2003/2004 DA7235, 4 poäng Fält som returvärde Sortera fält Söka i fält Tvådimensionella fält Fält och spelplan Föreläsning.
DA7351 Programmering 1 Fält och objekt Tvådimensionella fält Sortera fält Föreläsning 13.
Presentationens avskrift:

Föreläsning 5 Arrayer & ArrayList Hur man använder API:n Grafik (Frame, Button, Graphics)

Array Array är en indexerad lista av element som har samma typ. Man kan både ha arrayer av primitiva typer (int, double, char ,...) och arrayer av referens datatyper (String, … ). talArray int[] talArray=new int[6]; int t= talArray[0]; Index: 0 1 2 3 4 5 talArray[4]= 121; 121 18 talArray[5]= 18;

String[] namnArray=new String[6]; namnArray[0] =”Vahid”; namnArray Index: 0 1 2 3 4 5 null null null null null null ”vahid”

String[] namnArray=new String[6]; namnArray[0] =”Vahid”; namnArray[1]= ”johan”; namnArray Index: 0 1 2 3 4 5 null null null null null ”vahid” ”Johan”

String[] namnArray=new String[6]; namnArray[0] =”Vahid”; namnArray[1]= ”johan”; namnArray Index: 0 1 2 3 4 5 null null null null ”vahid” ”Johan”

String[] namnArray=new String[6]; namnArray[0] =”Vahid”; namnArray[1]= ”johan”; namnArray[4]= namnArray[1]; namnArray Index: 0 1 2 3 4 5 null null null null ”vahid” ”Johan”

String[] namnArray=new String[6]; namnArray[0] =”Vahid”; namnArray[1]= ”johan”; namnArray[4]= namnArray[1]; namnArray Index: 0 1 2 3 4 5 null null null ”vahid” ”Johan”

Array har ett fält som heter length och den visar arrayens storlek. t.ex: int[] enArray=new int[30]; enArray.length; //har värdet 30

ArrayList ArrayList är en klass som finns i paketet util, och därför måste man importera detta paket när man vill använda ArrayList. ArrayList har en del metoder som underlättar arbete med instanser av denna klass. Exampel: ArrayList minLista= new ArrayList(); minLista.size(); //returnerar 0 minLista.addElement(”element 1 i listan”); minLista.size(); //returnerar 1 minLista.add(”element 2 i listan”);

Skillnad mellan Arrayer och ArrayList När man skapar en Array måste man ange storleken på arreyen från början. Storleken kan sedan inte ändras, men när man vill skapa en instans av en ArrayList så behöver man inte ange bestämma storleken från början och storleken ändras automatisk när man lägger till eller tar bort. ArrayList kan inte innehålla primitiva typer d.v.s: minVek.add(12); är omöjligt minVek.add(’c’); är omöjligt För att: boolean add(Object o); (kolla i API:n) Som syns metoden add tar endast emot en instans av klassen Object som parameter. (observera alla klasser i java är en underklass till klassen Object)

minLista element ArrayList minLista= new ArrayList(); minLista.add(”Första element”); minLista.add(”Andra element”); String element=(String)minVek.get(1); minLista.remove(0); Instans av klassen ArrayList minLista ”Första element” ”Andra element” element

minLista element ArrayList minLista= new ArrayList(); minLista.add(”Första element”); minLista.add(”Andra element”); String element=(String)minVek.get(1); minLista.remove(0); Instans av klassen ArrayList minLista ”Första element” ”Andra element” element

minLista element ArrayList minLista= new ArrayList(); minLista.add(”Första element”); minLista.add(”Andra element”); String element=(String)minVek.get(1); minLista.remove(0); Instans av klassen ArrayList minLista ”Andra element” element

Matriser Matriser kan man skapa av två hakvektorer (array). Exempel: int[][] heltalMatris= new int [3][6]; heltalMatris heltalMatris[0][2]=124; andra index 0 1 2 3 4 5 1 2 124 Första index

Kombination med slingor Eftersom att varje element i array och ArrayList har ett index så kan man kombinera slingor med arrayer. Exempel: Skriv ett program som frågar användaren efter 10 ord och skriver ut de ord som har udda antal tecken först och jämna antal tecken sist.

Hur man använder API:n API:n består av en hel del paket som innehåller massa definierade referens datatyper som vi ibland kallar de klasser. Varje klass en del metoder. Metoder som har ordet static används på ett annat sätt än metoder som inte innehåller static. Beskrivning om parameter typ och retur-typ talar om hur metoden ska anropas. I den här kursen kommer vi använda paketen util, lang, io, awt, swing, applet mest av alla andra.

Hur man använder API:n För att anropa metoder som inte har ordet static så måste man skapa ett objekt av klassen. För att anropa metoder som har ordet static i deklarationen så ska man använda namnet på klassen. Antalet anrops parametrar och deras typ måste komma överens med antalet formella parameter.

Grafik i java Paketet awt (Abstract Window Tools) innehåller klasser och metoder som underlättar att skapa fönsterbaserat program. Frame är en klass som man kan skapa ett fönster med. Button är en klass som man kan skapa en knapp som man kan klicka på.

Exempel av Frame //skapar ett fönster med en titel Frame f= new Frame(”ett cool fönster”); // sätter storlek på fönstret 100 pixlar // i bredden och 200 pixlar ihöjden f.setSize(100,200); //visar fönstret på skärmen f. show();

Frame är en Container I awt finns en graphic komponenter, en del av de är Container d.v.s. Att de kan innehålla andra komponenter. Frame är en container. Man kan därför lägga till andra komponenter som Button (knapp) i Frame.

Exempel av Button f.setSize(100,200); //skapa en knapp Frame f= new Frame(”ett cool fönster med knapp”); f.setSize(100,200); //skapa en knapp Button b = new Button(”en värdelös knapp”); // lägg till knappen i fönstret annars kommer // inte att synas f.add(b); f. show();