Excerpt |
---|
Trinn 1 i Java-delen av Kodeklubben høsten 2014 handler om å bli vant med å programmere enkle Java-programmer, med utgangspunkt i at du kan litt Python fra før. |
På denne siden forklarer vi litt om forskjellen mellom Python og Java, med noen kode-eksempler. Først er det et lite eksempel for å komme igang og lenger ned et større et. Nederst på siden etter det største kode-eksemplet er det en oppgave (med deloppgaver), som vi anbefaler deg å prøve på.
Det meste er likt, men forskjellig...
...
Under er Java-versjonen av samme program. Kopier gjerne koden inn i et kodingsprosjekt i Eclipse med lim inn-funksjonen, så det blir enklere å leke seg litt med den. Lenger ned går vi gjennom de viktigste forskjellene mellom Python og Java, omtrent slik de dukker opp i kode-eksemplet. Nederst er det en oppgave i fem deler som bygger på denne koden. Til slutt er det en oppgave som vi anbefaler deg å se på, for å se at du har skjønt det viktigste.
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
package trinn1; class EncodeDecode { String alphabet = "abcdefghijklmnopqrstuvwxyz"; char encode(char letter, int secret) { int pos = alphabet.indexOf(letter); int newpos = (pos + secret); if (newpos >= 26) { newpos = newpos - 26; } return alphabet.charAt(newpos); } char decode(char letter, int secret) { int pos = alphabet.indexOf(letter); int newpos = (pos - secret); if (newpos < 0) { newpos = newpos + 26; } return alphabet.charAt(newpos); } void run() { String message = "hello world"; int secret = 17; String output = ""; for (int i = 0; i < message.length(); i = i + 1) { char character = message.charAt(i); if (alphabet.indexOf(character) >= 0) output = output + encode(character, secret); else output = output + character; System.out.println(output); } message = "yvccf nficu"; output = ""; for (int i = 0; i < message.length(); i++) { char character = message.charAt(i); if (alphabet.indexOf(character) >= 0) output = output + decode(character, secret); else output = output + character; System.out.println(output); } } public static void main(String[] args) { EncodeDecode program = new EncodeDecode(); program.run(); } } |
...
I motsetning til Python, så kan en ikke legge et kall til run() i bunnen av fila. For å få kalt run()-metoden så må en ha en spesiell main-metode, hvor en først lager program-objektet med new og så ber dette program-objektet utfør run. Det er main()-metoden som kjøres når vi starter programmet med java-kommandoen i terminalvinduet eller bruker Eclipse sin Run-kommando. Les mer om forskjellen på hvordan kjøring av Python- og Java-programmer virker her: Kjøring av Python- og Java-programmer.
Anchor | ||||
---|---|---|---|---|
|
...