1 2 3 4 5 6 7 8 9 | public class Test { public static void main(String[] args) { System.out.println("Dit is een test"); } } |
Ik wilde het net zeggen, check dat even na!quote:Op woensdag 19 april 2006 13:35 schreef Gabberhead het volgende:
In je classpath staat C:\j2sdk1.4.2.11\ en C:\j2sdk1.4.2_11\
In je PATH is het C:\j2sdk1.4.2_11\
Eentje daarvan is fout en de andere niet. Mijn vermoeden is dat de entries met de underscore goed zijn
1 |
Iddquote:Op woensdag 19 april 2006 15:07 schreef FallenAngel666 het volgende:
Dat krijg je als je een teksteditor gebruikt voor applicatie ontwikkeling in plaats van een volwaardige IDE, zoals Eclipse. Die regelt dat lekker voor je
Dat heb ik een keer per ongeluk uitgezet.quote:
Ja... maar ik heb het probleem ook op een andere computer... lukt het jou wel dan?quote:Op zaterdag 22 april 2006 15:40 schreef gelly het volgende:
Heb je je browser al opnieuw opgestart ?
quote:<HTML>
<!-- Lotus-Domino (Release 5.0.2a (Intl) - 23 November 1999 on Windows NT/Intel) -->
<HEAD>
Er is een smerig truucje voor, dat is deze:quote:Op dinsdag 25 april 2006 21:04 schreef teehknaL het volgende:
Misschien een domme vraag, maar ik kom er niet uit:
ik heb een double, en die wil ik graag in een textfield krijgen. Nou wil .setText() alleen maar strings gevoerd krijgen. Hoe moet ik nou die double converteren naar een string? Iemand een idee?
Hee thanx!quote:Op dinsdag 25 april 2006 21:09 schreef HuHu het volgende:
Er is een smerig truucje voor, dat is deze:
.setText("" + deDouble );
Hierbij wordt de double automatisch naar een Sting omgezet, omdat je deze met de + aan een (lege) string plakt. En de nette manier is:
.setText(String.valueOf(deDouble));
parseDoublequote:Op dinsdag 25 april 2006 21:09 schreef HuHu het volgende:
[..]
Er is een smerig truucje voor, dat is deze:
.setText("" + deDouble );
Hierbij wordt de double automatisch naar een Sting omgezet, omdat je deze met de + aan een (lege) string plakt. En de nette manier is:
.setText(String.valueOf(deDouble));
parseDouble gebruik ik de andere kant opquote:
1 2 | double diameter = Double.parseDouble(str); |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 | public class Opdracht3part1a { public static void main(String [] args) { String s1 = "Happy New Year"; String s2 = "ew Y"; //System.out.println(s2.length()); System.out.println(s1.indexOf(s2)); System.out.println(indexOf(s1,s2)); } public static int indexOf(String s1, String s2) { char c, d, e, f; int i, k, x, y, z, h=-1; for (i=0; i < s1.length(); i++) { c = s1.charAt ![]() for (k=0; k < s2.length(); k++) { d = s2.charAt(k); boolean sjaak = true; if (c==d) { h=i; x=i; y=k; while(sjaak) { x=x+1; y=y+1; e = s1.charAt(x); f = s2.charAt(y); if (e==f) { sjaak = true; z=y; z=z+1; if (z==s2.length()) return h; } else { sjaak = false; h=-1; } } } else { k=k+s2.length(); h=-1; } } } return h; } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | { public static void main(String[] args) { System.out.println("index:" + indexOf("testhallo","tst")); System.out.println("index:" + indexOfLooped("testhallo","tst")); System.out.println("index:" + indexOf("hallotesthallo","test")); System.out.println("index:" + indexOfLooped("hallotesthallo","test")); } // recursief public static int indexOf(String haystack, String needle) { if(haystack.length() >= needle.length()) { if(haystack.startsWith(needle)) { return 0; } else { int index = indexOf(haystack.substring(1),needle); if(index == -1) return -1; else return 1+index; } } else { return -1; } } // lus public static int indexOfLooped(String haystack, String needle) { for(int index = 0; haystack.length() > 0; index++) { if(haystack.startsWith(needle)) return index; haystack = haystack.substring(1); } return -1; } } |
je zou eens na moeten lezen wat StartsWith doet:quote:Op donderdag 25 mei 2006 16:21 schreef KneiterS het volgende:
Ik zit nog steeds te kijken hoe je dat nou flikt met die lus manier.
Je kijkt eerst of de eerste string begint met dezelfde letter als de 2de string. Is dit zo dan return je de index van hoe vaak die al door de loop geweest is. Daarnaast doe je ook iedere iteratie de eerste letter van string1 afnemen zodat je steeds met een andere letter vergelijkt. Maar wat ik nou niet snap hoe kan het dit systeem ook werkt als je bijvoorbeeld de eerste test of Test gelijk is aan TeSt. Als ik naar deze code kijk dan zie ik alleen maar dat er vergeleken word of de eerste letter gelijk is van een woord. Maar op de een of andere manier werkt het toch allemaal. Kan je me misschien uitleggen waar die vergelijking dan gemaakt wordt?
1 2 3 | for(int i=0; i < 40; i++) myArray[i]=0; |
1 2 3 4 5 6 7 8 9 | for (int i=0; i < 40; i++) { if (myArray[i]<half) { myArray2[k]=myArray[i]; k=k+1; } } |
In java.ulils.Arrays zit een static methode fill() (zie API docs)quote:Op zondag 28 mei 2006 14:58 schreef KneiterS het volgende:
Daar ben ik weer met nog een vraagje:
Ik moet nu wat opdrachtjes maken over arrays. Allereerst moet ik een array initialiseren van 40 elements en vervolgens zorgen dat alle 40 de waarde 0 hebben. Dit heb ik gedaan met een loopje:
[ code verwijderd ]
Werkt op zich prima maar ik vroeg me af of er niet gewoon een functie voor is in java? Dat je dat loopje niet nodig hebt maar dat vanzelf alles gevuld wordt met 0?
Arrays zijn vies. Eigenlijk moet je docent een pak slaag omdat ie je met arrays bezig laat zijn, maar goed.quote:In de opdracht moet ik verder 500 random getallen trekken tussen 0 en 39 en dan steeds 1tje optellen in de desbetreffende deel van de array. Dat lukt allemaal prima. Dan moet ik de het hoogste getal van de array nemen en het laagste, deze optellen en delen door 2, dat wordt dan het getal half. Dat lukt ook. Maar dan moet ik een 2de array maken waar alleen de getallen lager dan half ingezet mogen worden. Nou lukt het idee me opzich wel, dat doe ik namelijk als volgt:
[ code verwijderd ]
Alleen moet je natuurlijk eerst die array initialiseren en dan moet je een getal opgeven van hoeveel plaatsen je wilt in die array, maar vantevoren weet ik nog helemaal niet hoeveel plaatsen ik nodig heb. Nou vraag ik me af hoe ik dat dan voor elkaar kan krijgen is er geen functie dat je steeds een extra plaatsje erbij kan maken in je array? Ik hoop dat het een beetje duidelijk is.
Mja, da's het nadeel van een array; de grootte staat van te voren vast - gelukkig zijn er wel oplossingen (linked list enzo) maja, het lijkt me ook dat de docent wil dat je 2x er doorheen gaat. Eenmaal op het aantal uit te vinden, dan array aanmaken en dan de array vullen.quote:Op zondag 28 mei 2006 15:12 schreef Aaargh! het volgende:
[..]
In java.ulils.Arrays zit een static methode fill() (zie API docs)
[..]
Arrays zijn vies. Eigenlijk moet je docent een pak slaag omdat ie je met arrays bezig laat zijn, maar goed.
Als ik het goed begrijp moet je een 2e array opleveren waarin alleen de getallen staan uit array 1 die lager zijn dan de variabele 'half'. Begrijp ik het goed als ik hieruit opmaak dat de 2e array geen 'lege' posities mag bevatten en dat deze verder op dezelfde volgorde moet zijn als array 1 ?
Wat je docent denk ik wil is dat je eerst een lusje maakt die telt hoeveel items in array 1 er lager zijn dan 'half' en dat je deze gebruikt om een nieuwe array aan te maken.
Ja volgens mij begrijp je het goed. Wat jij zegt dat had ik idd geprobeerd maar dan krijg ik een fout. Ik zal wel mijn hele code laten zien:quote:Op zondag 28 mei 2006 15:12 schreef Aaargh! het volgende:
Arrays zijn vies. Eigenlijk moet je docent een pak slaag omdat ie je met arrays bezig laat zijn, maar goed.
Als ik het goed begrijp moet je een 2e array opleveren waarin alleen de getallen staan uit array 1 die lager zijn dan de variabele 'half'. Begrijp ik het goed als ik hieruit opmaak dat de 2e array geen 'lege' posities mag bevatten en dat deze verder op dezelfde volgorde moet zijn als array 1 ?
Wat je docent denk ik wil is dat je eerst een lusje maakt die telt hoeveel items in array 1 er lager zijn dan 'half' en dat je deze gebruikt om een nieuwe array aan te maken.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 | import java.util.Random; public class Opdracht1 { public static void main(String[] args) { Random random = new Random(); int a = 40; int[]myArray = new int[a]; for(int i=0; i < a; i++) myArray[i]=0; for (int i=0; i < 500; i++) { int value = Math.abs(random.nextInt()); value = value%a; myArray[value] = myArray[value]+1; } int half = half(myArray); System.out.println(half); int x=0; for (int i=0; i < 40; i++) { if (myArray[i]<half) { x=x+1; } } int[]myArray2 = new int[x]; int k=0; for (int i=0; i < 40; i++) { if (myArray[i]<half) { myArray2[k]=myArray[i]; k=k+1; } } int half2 = half(myArray2); System.out.println(half2); } public static int half(int myArray[]) { int mx=0; int mn=500; for (int i=0; i < 40; i++) { if(myArray[i]>mx) mx = myArray[i]; if(myArray[i]<mn) mn = myArray[i]; } int half = (mx + mn)/2; return half; } } |
1 2 3 4 5 6 7 8 9 10 11 | for (int i=0; i < 40; i++) { if (myArray[i]<half) { x=x+1; } } int[]myArray2 = new int[x]; |
1 |
1 2 3 4 5 6 7 8 | { if (myArray[i]<half) { myArray2[k]=myArray[i]; k=k+1; } } |
Dat ook jaquote:Op zondag 28 mei 2006 15:32 schreef Aaargh! het volgende:
Je fout zit in de methode 'half()'
Die doet de aanname dat de array die bekeken wordt 40 elementen heeft, maar myArray2 heeft meestal helemaal niet 40 elementen.
Als je even de stacktrace had bekeken had je gezien dat de fout in regel 61 zit.
Nee, dat klopt wel. De eerste array is nog steeds 40 groot, voor de 2e array gebruikt ie de variabele 'k'. (ook niet netjes, hij had een meer omschrijvender variabele naam kunnen kiezen).quote:Op zondag 28 mei 2006 15:35 schreef fallrite het volgende:
[ code verwijderd ]
In dat stuk ga je de 2e array vullen maar je gebruikt nog wel als grens 40 terwijl de array hoogstwaarschijnlijk kleiner is (daar dient dus niet 40 maar x te staan (die variable is namelijk de lengte van de array)).
Nope.quote:Op woensdag 31 mei 2006 13:50 schreef Scorpie het volgende:
gewoon de 2e array in een vector gooien met vector.fill() (volgens mij?).
1 2 3 4 5 | // Wat elementen toevoegen... Vector bar = new Vector(Arrays.asList(foo)); |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |