Kapitel 6. Kapitel 6. Hakparenteser fšr att ange index float[] priser = new float[500]; frekvens[4] boolean[] flaggor;

Relevanta dokument
Kapitel 6. Hakparenteser fšr att ange index MŒnga všrden av samma typ

Arrayer. results

Ett problem. Kontrollstrukturer och arrayer. Arrayer. Lösningen. Arrayer och hakparanteser. Exempel int[] results; results = new int[10]; // 0..

Exempel. Arrayer. Lösningen. Ett problem. Arrayer och hakparanteser. Arrayer

Objektorienterad programmering i Java

Objekt och klasser - Introduktion. Objekt. SparKonto.java 2. SparKonto.java 1. Konton.java. Ett objekt har: Ett bankkonto

Objekt och klasser - Introduktion. Objekt. Spar_Konto 2. Spar_Konto 1. Konton. Ett objekt har: Ett bankkonto. public void uttag(double belopp)

1 Programmering i Java. Program element - Introduktion. Exempel. Exempel. Kapitel 3:

Fält & Vector. Fält (array) - deklaration & användning Fält som parametrar Flerdimensionella fält klassen Vector. Programmeringsmetodik -Java 101

Heltalsrepresentation. Fler byggstenar. Overflow och Underflow. TvŒ-komplement. FlyttalsvŠrden. Fyra heltalstyper. Tecken-bit

Föreläsning 2 Objektorienterad programmering DD1332. Typomvandling

Föreläsning 11. Arrayer. Arrayer. Arrayer. Lagrar flera värden av samma typ Kan vara primitiva typer eller objekt. Kan ha en array av t.

TENTAMEN PROGRAMMERINGSMETODIK MOMENT 2 - JAVA, 4P

Föreläsning 2, vecka 8: Repetition

Datatyper och kontrollstrukturer. Skansholm: Kapitel 2) De åtta primitiva typerna. Typ Innehåll Defaultvärde Storlek

Lite om felhantering och Exceptions Mer om variabler och parametrar Fält (eng array) och klassen ArrayList.

Föreläsning 3: Abstrakta datastrukturer, kö, stack, lista

Idag. Javas datatyper, arrayer, referenssemantik. Arv, polymorfi, typregler, typkonvertering. Tänker inte säga nåt om det som är likadant som i C.

Grundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2

Parameteröverföring. Exempel. Exempel. Metodkropp

Kodkonvention Klasser påbörjas med stor bokstav (i övrigt små utom om flera ord då Inledande bokstav i övriga ord också görs stor) AClass

LÖSNINGSFÖRSLAG Programmeringsteknik För Ing. - Java, 5p

(Man brukar säga att) Java är... Denna föreläsning. Kompilering av Java. Historik: Java. enkelt. baserat på C/C++ Allmänt om Java

Abstrakta datatyper. Primitiva vektorer. Deklarera en vektor

4 13 / %.; 8 </" '': " / //&' " " ' * TelefonKostnad +,-%&. #!" $% " &' . > / ' 5 /' * 13/ &' static Math 1+" &'/ % 12 "" static "' * 1 /") %& &

JAVAUTVECKLING LEKTION 8

Grundläggande programmering, STS 1, VT Sven Sandberg. Föreläsning 12

Föreläsning 6: Metoder och fält (arrays)

Typkonvertering. Java versus C

Tentamen. Lösningsförslag

Objekt och klasser - Introduktion

Det finns en referensbok (Java) hos vakten som du får gå fram och läsa men inte ta tillbaka till bänken.

1 Uppgift 1. a) Skapar ett Company-objekt med hjälp av den överlagrade konstruktorn. Du kan själv välja värden på instansvariablerna.

Lösningar för tenta 2 DAT043,

Den som bara har en hammare tror att alla problem är spikar

Dagens föreläsning. Arrayer och klasser. Medan ni väntar: Gå till m.voto.se/prog11 och svara på några gamla tentamensfrågor! (26 januari 2018 F3 1 )

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Felsökning. Datatyper. Referenstyper. Metoder / funktioner

l uppgiftsformulering l algoritmkonstruktion l verifikation l kodning l testning och avlusning l validering l dokumentering l underhœll Kapitel 2

Programmering med Java. Grunderna. Programspråket Java. Programmering med Java. Källkodsexempel. Java API-exempel In- och utmatning.

SMD 134 Objektorienterad programmering

Datastrukturer. Erik Forslin. Rum 1445, plan 4 på Nada

Föreläsning 8 Programmeringsteknik och Matlab 2D1312/2D1305. Klass Object, instans av klass public/private Klassvariabler och klassmetoder

Classes och Interfaces, Objects och References, Initialization

Föreläsning 5 (6) Metoder. Metoder Deklarera. Metoder. Parametrar Returvärden Överlagring Konstruktorer Statiska metoder tostring() metoden javadoc

F4 Klasser och Metoder. ID1004 Objektorienterad programmering Fredrik Kilander

TENTAMEN OOP

Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering

DI-institutionen Sid 1 av 6 Hans-Edy Mårtensson Sten Sundin

Att skriva till och läsa från terminalfönstret

Fält av referenser. Konstruktorerna används för att skapa Bilar och Trafikljus.

Klassdeklaration. Metoddeklaration. Parameteröverföring

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper

Föreläsning 3-4 Innehåll

Föreläsning 10. ADT:er och datastrukturer

Föreläsning 12. Länkade listor

JAVA Mer om klasser och objektorientering

Command line argumenter. Objektorienterad Programmering (TDDC77) Vad blir resultatet? Nu då? Ahmed Rezine. Hösttermin 2016

Objektorienterad Programmering (TDDC77)

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper

Lösningsförslag till tentamen för TDA540 Objektorienterad Programmering

2 b) Följande finns definierat: public class Käk String titel = "Chili con carne"; Krydda[] kryddor = new Krydda[10]; kryddor[0] = new Krydda("Svartpe

Föreläsning 5-6 Innehåll. Exempel på program med objekt. Exempel: kvadratobjekt. Objekt. Skapa och använda objekt Skriva egna klasser

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Exempelduggan. Luffarschack. Koda spel

Att deklarera och att använda variabler. Föreläsning 10. Synlighetsregler (2) Synlighetsregler (1)

TENTAMEN. Kurs: Objektorienterad programmeringsmetodik 5DV133 Ansvarig lärare: Anders Broberg. VT-13 Datum: Tid: kl

TENTAMEN OOP

Föreläsning 5-6 Innehåll

Inkapsling tumregler. Åtkomstmodifikatorer, instantiering, referenser, identitet och ekvivalens, samt klassvariabler. public och private

2 b) Följande finns definierat: public class Spel String titel = "Spel"; Dice[] tärningar = new Dice[10]; tärningar[0] = new Dice("Röd"); tärningar[1]

Grundläggande programmering, STS 1, VT Sven Sandberg. Föreläsning 14

TENTAMEN: Objektorienterad programmering. Läs detta! Skriv din tentamenskod på varje blad (så att vi inte slarvar bort dem).

Föreläsning 2. Täcker material från lektion 1, 2, 3 och 4:

Tänk på följande: Det finns en referensbok (Java) hos tentavakten som du får gå fram och läsa men inte ta tillbaka till bänken.

Dagens program. Programmeringsteknik och Matlab. Objektorienterad programmering. Vad är vitsen med att ha både metoder och data i objekten?

Tentamen i Programmeringsteknik I

Tentamen , Introduktion till Java, dtaa98, dtea53

Föreläsning 8: Exempel och problemlösning

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper

Variabler som hör till enskilda objekt. Deklareras på översta nivån i klassen och i regel som private.

Metoder - en funktion: medel

OOP Objekt-orienterad programmering

public och private Obs: private inte skyddar mot access från andra objekt i samma klass.

Lšneadministration Handbok

Generisk klass med typparameter Inre klass - ListIterator

F7 - Arrayer. ID1004 Objektorienterad programmering Fredrik Kilander

Kungliga Tekniska Högskolan Ämneskod 2D4134 Nada Tentamensdag maj - 19 Tentamen i Objektorientering och Java Skrivtid 5 h

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper

Det finns en referensbok (Java) hos tentavakten som du får gå fram och läsa men inte ta tillbaka till bänken.

Föreläsning 4. Klass. Klassdeklaration. Klasser Och Objekt

Laboration 13, Arrayer och objekt

Del A (obligatorisk för alla)

Konstruktion av klasser med klasser

Parsing med Recursive Descent, Avbildningsklasser. Syntaxdiagram. Syntaxdiagram och kodning expression. Betrakta följande uttryck

Föreläsning 1 Datastrukturer (DAT037)

Java, klasser, objekt (Skansholm: Kapitel 2)

Objektorienterad Programmering (TDDC77)

JAVAUTVECKLING LEKTION 7

Programmering A. Johan Eliasson

Det är principer och idéer som är viktiga. Skriv så att du övertygar examinatorn om att du har förstått dessa även om detaljer kan vara felaktiga.

Transkript:

Organisation En array Šr en ordnad lista av všrden Varje všrde har ett numeriskt index - deklaration & anvšndning som parametrar flerdimensionella fšlt N element indexeras med 0 till N-1 0 1 2 3 4 5 6 7 8 9 resultat 79 87 94 82 67 98 87 81 74 91 klassen Vector 1 2 Deklaration MŒnga všrden av samma typ int[] frekvens = new int[10]; É kan vara primitiva typer eller objekt et sjšlv Šr ett objekt Namnet pœ fšltet blir dœ en referens variabel, och fšltet instansieras separat Typen anger inte storleken Typen Šr int[] Instansieras till 10 heltal Indexeras 0..9 Se Basic_Array.java (s.210) 3 4 Exempel Hakparenteser fšr att ange index float[] priser = new float[500]; frekvens[4] boolean[] flaggor; Kan anvšndas šverallt dšr ett heltal fœr fšrekomma flaggor = new boolean[20]; Tilldelning, utskrift, uttrycké. char[] koder = new char[1750]; 5 6 1

Indexkontroll VŠl skapat Šr fšltet fixt Index mœste referera till existerande element index i intervallet 0ÉN-1 frekvens[(tal-1)/10] = frekvens[(tal-1)/10]+1; Index kontrolleras under kšrning off-by-one vanligt fel Varje fšlt objekt har en konstant length frekvens.length Antalet element, inte hšgsta index Se Reverse_Numbers.java (212) ets storlek 7 8 Hela fšltet kan initialiseras vid deklarationen Initialisering Observera : Ð new anvšnds inte Ð Ingen explicit storlek Initialisera med listor int[] enheter = 147, 323, 89, 933, 540, 269, 97, 114, 298, 476}; char[] kursniva = 'A', 'B', 'C', 'D'}; LŠngden bestšms av antalet element Endast vid deklarationen Se Primes.java och Sales_Analysis.java 9 10 Objekt som element Elementen i ett fšlt kan vara objektreferenser String[] grupp = new String[5]; 5 referenser till objekt av typen String Inga objekt har skapats (referensen Šr null) Varje objekt skapas separat grupp [0] = new String(ÓEmilieÓ); Eller (fšr String ) String[] grupp = ÓEmilieÓ, ÓJohannaÓ, ÓJakobÓ, ÓEllenÓ, ÓFridaÓ }; Se Roll_Call.java (223) class Membership() private Member[] member _list; private int num_member s; som attribut 11 12 2

class Member () private String name; private int member ship_number; Member Public Member (String member_name, int id_number) name = member_name; member ship_number = id_number; }//konstruktorn }//class Member Class Membership() private Member[] member _list; private int num_member s; Public Membership() num_members = 4; member _list = new Member[4]; member _list[4] = new Member( Johnny Storm,70469);... } Membership 13 14 som parametrar Referensen šverfšrs och den formella och aktuella parametern blir alias ndringar pœverkar bœda Elementen kan skickas och fšljer elementtypens regler Se Array_Test.java (225) import java.io.*; public class Histogram Histogram private DataSamling data; public Histogram(DataSamling datasamling) data = datasamling; }//Histogram - konstruktor public void ritahistogram() }//metod ritahistogram 15 16 import java.io.*; DataSamling public class DataSamling private int maximum; // Gränser... private int minimum; // private int[] frekvens; private int antalkategorier; private int kategoribredd; public DataSamling(int min, int max, int antalkat) maximum = max; minimum = min; antalkategorier = antalkat; frekvens = new int[antalkategorier]; kategoribredd = (maximum-minimum +1)/antalKategorier; if (kategoribredd*antalkategorier < (maximum-minimum+1)) kategoribredd = kategoribredd +1; }// DataSamling - konstruktor 17 Servicemetoder public void samlaintalen() public int antalkategorier() public int kategoribredd() public int antali(int index) public int minvarde() 18 3

import java.io.*; /* pp 6.25 */ samlaintalen public class Pp625 public static void main(string[] args) throws IOException DataSamling data = new DataSamling(1,100,20); data.samlaintalen(); Histogram histogram = new Histogram(data); histogram.ritahistogram(); }// main }// Pp625 19 20 ritahistogram Flerdimensionella fšlt En-dimensionella fšlt = listor av všrden TvŒ-dimensionella fšlt - tabeller med rader & kolumner TvŒ index av fšlt i Java, medfšr att raderna kan ha olika lšngd 21 22 Flerdimensionella fšlt Lista av listor Kan initialiseras med listor Varje lista har en egen lšngdkonstant int[][] tabell = new int[4][5]; tabell.length har všrdet 4 medan alla dellistor tabell[i].length har všrdet 5 (alla listor lika lœnga) Se Multi_Array_Test.java (229) Klassen Vector Ett objekt av klassen Vector liknar ett fšlt Men Ð Lagrar bara referenser till o bjekt av typen Object Ð Inte samma syntax fšr indexering Klassen tillhšr java.util 23 24 4

Servicemetoder addelement (Object element) removeelement (Object element) contains (Object element) elementat (int index) elementat (int index) firstelement () lastelement () size () println šverlagrad till Vector -klassen Se Beatles.java (233) 25 Listtypen dynamisk Implementeras med fšlt Klassen Vector Om mer utrymme behšvs, skapas ett nytt objekt och elementen kopieras šver 26 5