HP
20k innlegg
Har du levert? Jeg rakk ikke komme på innom her i går kveld, beklager.
Startet av *HH* 65 svar 16k visninger
public class Bok {
private String tittel;
private String forfatter;
private int utgivelsesar;
private String forlag;
private int antallSider;
public int numPages;
public String getName;
public Bok(String tittel, String forfatter, int år, int antSider, String forlag){
this.tittel = tittel;
this.forfatter = forfatter;
endreUtgivelsesar(år);
endreAntSider(antSider);
this.forlag = forlag;
}
//--------------- metoder som returnerer verdier --------------
public String visTittel (){
return tittel;
}
public String visForfatter (){
return forfatter;
}
public int visUtgivelsesar (){
return utgivelsesar;
}
public int visAntallSider (){
return antallSider;
}
public void setAntallSider (int AntallSider) {
AntallSider = AntallSider();
}
public int getAntallSider() {
return AntallSider;
}
//dette er en mutasjonsmetode
public void setNumPages(int numOfPages){
numPages = numOfPages;
}
//dette er enn tilgangsmetode
public int getNumPages(){
return numPages;
}
public void setGetName(String getOneName){
getName = getOneName;
}
public String getName(){
return Name;
}
//------------------- metoder som endrer på attributter ------------------------
public void endreUtgivelsesar(int ar) {
utgivelsesar = ar;
}
public void endreAntSider(int antSider){
if(antSider > 0){
antallSider = antSider;
}
}
public void endreForfatter(String nyForfatter){
forfatter = nyForfatter;
}
public String toString(){
return String.format("%s (%s, %d) ",
tittel, forfatter, utgivelsesar);
}
}
import java.util.*;
//import java.text.*;
import java.util.ArrayList;
import java.util.Collections; //for å sortere arraylistene..
public class Bibliotek {
private ArrayList<Bok> bokListe;
public Bibliotek(){
bokListe = new ArrayList<Bok>();
}
private int finnBokPosisjon(String forfatter, String tittel){
int BokPosIndex = -1;
for(int i = 0; i < bokListe.size(); i++){
//System.out.println("Test om forfatter:"+forfatter+" og "+bokListe.get(i) .visForfatter()+" er like");
//System.out.println("Test om tittel:"+tittel+" og "+bokListe.get(i) .visTittel()+" er like");
if(bokListe.get(i).visForfatter().equalsIgnoreCase(forfatter)&& bokListe.get(i).visTittel().equalsIgnoreCase(tittel)){
BokPosIndex = i;
break; //antar at søket skal stoppe ved første treff
}
}
return BokPosIndex;
}
public int visAntallBoker(){
return bokListe.size();
}
public boolean leggTilBok(String forfatter,String tittel,int ar, int antSider, String forlag){
boolean BokBleLagtTil = false;
if(finnBokPosisjon(forfatter, tittel) == -1){
Bok enBok = new Bok(forfatter, tittel, ar, antSider, forlag);
Bok toBok = new Bok(forfatter, tittel, ar, antSider, forlag);
Bok treBok = new Bok(forfatter, tittel, ar, antSider, forlag);
bokListe.add(enBok);
bokListe.add(toBok);
bokListe.add(treBok);
BokBleLagtTil = true;
}
return BokBleLagtTil;
}
public Bok finnBok(String forfatter, String tittel){
/*System.out.print("Det gikk");
System.out.print(bokListe.get(0).visForfatter());
System.out.print(bokListe.get(0).visTittel());*/
Bok funnetBok = null;
int BokIndex = finnBokPosisjon(forfatter, tittel);
if(BokIndex != -1){
funnetBok = bokListe.get(BokIndex);
}
return funnetBok;
}
public Bok slettBok(String tittel, String forfatter){
Bok funnetBok = null;
int BokIndex = finnBokPosisjon(forfatter, tittel);
if(BokIndex != -1){
funnetBok = bokListe.get(BokIndex);
bokListe.remove(BokIndex);
}
return funnetBok;
}
public ArrayList<Bok> finnAlleBoker(String forfatter){
ArrayList<Bok> bokListePaaForfatter = new ArrayList<Bok>();
for(int i = 0; i < bokListe.size(); i++){
if(bokListe.get(i).visForfatter().equalsIgnoreCase(forfatter)){
bokListePaaForfatter.add(bokListe.get(i));
}
}
//Collections.sort(bokListePaaForfatter);
return bokListePaaForfatter;
}
//public boolean Test (String enBok, String toBok){
//if(forfatter).equals (forfatter)) {
//System.out.println("Funker");
//}
//System.out
public boolean sammenligneAntallSider(Bok enBok, Bok toBok){
boolean bokerLike = false;
if(enBok.getAntallSider() == toBok.getAntallSider()){
bokerLike = true;
}
return bokerLike;
}
}
public class BibliotekTest {
public static void main(String[] args) {
Bibliotek etBibliotek = new Bibliotek();
etBibliotek.leggTilBok("Italienske sko", "Henning Mankell", 1999, 306, "Gyldendal");
System.out.println(etBibliotek.visAntallBoker());
Bok enBok = etBibliotek.finnBok("Henning Mankell", "Italienske sko");
etBibliotek.leggTilBok("Berliner Poplene", "Anne B. Ragde", 2001, 411, "Per");
Bok toBok = etBibliotek.finnBok("Anne B. Ragde", "Berliner Poplene");
etBibliotek.leggTilBok("Erasmus Montanus", "Hans Nilsen", 1908, 200, "Gyldendal");
Bok treBok = etBibliotek.finnBok("Hans Nilsen", "Erasmus Montanus");
//if (enBok != null) {
//System.out.print(enBok.visTittel());
//System.out.println(etBibliotek.finnBok("Test2", "Test1"));
//}
}
}
public class Bok {
private String tittel;
private String forfatter;
private int utgivelsesar;
private String forlag;
private int antallSider;
public Bok(String tittel, String forfatter, int utgivelsesar, int antSider, String forlag) {
setTittel(tittel);
setForfatter(forfatter);
setUtgivelsesar(utgivelsesar);
setAntallSider(atSider);
setForlag(forlag);
}
/**
* Aksessormetoder
*/
public String getTittel () {
return tittel;
}
public String getForfatter () {
return forfatter;
}
public int getUtgivelsesar () {
return utgivelsesar;
}
public int getAntallSider () {
return antallSider;
}
public String getForlag() {
return forlag;
}
/**
* Mutatormetoder
*/
public set(String tittel, String forfatter, int utgivelsesar, int antSider, String forlag) {
setTittel(tittel);
setForfatter(forfatter);
setUtgivelsesar(utgivelsesar);
setAntallSider(atSider);
setForlag(forlag);
}
public void setAntallSider (int antallSider) {
this.antallSider = antallSider;
}
public void setTittel(String tittel) {
this.tittel = tittel;
}
public void setForfatter(String forfatter) {
this.forfatter = forfatter;
}
public void setUtgivelsesar(int utgivelsesar) {
this.utgivelsesar = utgivelsesar;
}
public void setForlag(String forlag) {
this.forlag = forlag;
}
/**
* Metode for sammenligning av denne boken med en annen
* Eksempelet viser antall sider, kan også brukes på andre elenemt
*/
public int comparePages(Bok annenBok) {
if (this.antallSider < annenBok.getAntallSider())
return -1;
else if (this.antallSider > annenBok.getAntallSider())
return 1;
else
return 0;
}
/**
* "Obligatoriske" metoder, overstyrer Object sine metoder
*/
public boolean equals(Object annenBok) {
//Test om annenBok er en bok før du fortsetter
if (this.tittel == annenBok.getTittel() && this.forfatter == annenBok.getForfatter() && this.utgivelsesar == annenBok.getUtgivelsesar() && this.antallSider == annenBok.getAntallSider() && this.forlag == annenBok.getForlag())
return true;
else
return false;
}
public String toString(){
return String.format("%s (%s, %d) ", tittel, forfatter, utgivelsesar);
}
}*HH* skrev:Eksempel på sammenligning skal inn i Bibliotek slik som jeg hadde den eller er det feil?
bok.comparePages(annenBok);Pastill skrev:Public void SET??? Aldri hørt om...
Lykke til..hehe.
HP skrev:set() setter alle variabler, get() henter alle variabler. 🙂
Pastill skrev:Ok.. vi har aldri skrevet noe annet enn public void main.. kommer sikkert.
*HH* skrev:Ikke vi heller, syntes ikke vi har forutsetning til å klare dette, ikke jeg i alle fall. Men vet noen i klassen har drevet med Java før, så de har ikke de samme problemene.
Pastill skrev:Ok.. vi har aldri skrevet noe annet enn public void main.. kommer sikkert.
Logg inn for å svare i denne tråden.