31. oktober 2004 - 09:51
Der er
11 kommentarer og 1 løsning
Gem i array
Hej, jeg har lige for et par dage siden kastet mig ud i Java. Er begyndt at lave et "Sims" spil bare for at arbejde lidt med koden, den eneste måde at lære det på. Det er selvfølgelig lidt mindre avanceret end det virkelige spil, og ser foreløbig således ud: class Sims3 { public static void main(String[] arguments) { // Argumentet indfanges String indput = arguments[0]; // Simsens ejendele String[] ejendele = {"pude","dyne"}; int antal_ejendele = ejendele.length; // Ejendele skrive til brugeren if(indput.equals("vis sims")){ for(int i = 0; i < antal_ejendele; i++){ System.out.println("Dine ejendele er: " + ejendele[i]); } } } } Jeg ønsker nu at lave en funktion der hedder "køb", således at man kan købe nye ting til sin Sims. Jeg forestillede mig at man kunne tilføje ting til det allerede eksistrende array (ejendele)? Hvordan løser jeg dette nemmest?
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
31. oktober 2004 - 10:02
#1
Så bør du skifte fra et alimndligt array til en ArrayList !
31. oktober 2004 - 10:04
#2
Den udvider sig nemlig dynamisk. ArrayList list = new ArrayList(); list.add("pude"); list.add("dyne"); list.add("xxxx");
31. oktober 2004 - 10:08
#3
Vil du forklare nærmere? Og hvordan skriver jeg så nye værdier til min ArrayList?
31. oktober 2004 - 10:13
#4
Når jeg skriver nye værdier, mener jeg hvordan jeg tilføjer værdier fra min Kommando promt.
31. oktober 2004 - 10:16
#5
Du læser en String ind og add'er den til listen.
31. oktober 2004 - 10:18
#6
Kan du vise et lille eksempel? Eller et link til et sted hvor der er et eksempel? Som sagt er jeg ikke helt hardcore.
31. oktober 2004 - 10:26
#7
BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); ... System.out.print("Indtast noget: "); String s = br.readLine(); list.add(s); hvor list er som ovenfor
31. oktober 2004 - 10:34
#8
Det kan godt være det er mig der er blank, men får en masse fejl i linien Buffered.. class Sims4 { public static void main(String[] arguments) { // Argumentet indfanges String indput = arguments[0]; // Simsens ejendele String[] ejendele = {"pude","dyne", "Pude", "dyNe", "Hej"}; int antal_ejendele = ejendele.length; // Ejendele skrive til brugeren if(indput.equals("vis sims")){ for(int i = 0; i < antal_ejendele; i++){ System.out.println("Dine ejendele er: " + ejendele[i]); } } BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); ArrayList list = new ArrayList(); list.add("pude"); list.add("dyne"); list.add("xxxx"); System.out.print("Indtast noget: "); String s = br.readLine(); list.add(s); } }
31. oktober 2004 - 10:46
#9
Put det her aller øverst i dit program: import java.io.*; import java.util.*;
31. oktober 2004 - 10:52
#10
Det her eksempel kører (og tror jeg ligner det du vil): import java.util.*; import java.io.*; public class CollectToList { public static void main(String[] args) throws Exception { ArrayList list = new ArrayList(); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); list.add("A"); list.add("BB"); for(int i = 0; i < list.size(); i++) { System.out.println(list.get(i)); } System.out.print("Indtast noget: "); String s = br.readLine(); list.add(s); for(int i = 0; i < list.size(); i++) { System.out.println(list.get(i)); } } }
31. oktober 2004 - 10:52
#11
og et svar
08. november 2004 - 09:36
#12
Mange tak!
Kurser inden for grundlæggende programmering