String

&

Input/Output

Av: Gard Inge Rosvold (gardir@ifi.uio.no)

Innhold

  • String
    • Verdi
    • Variabel
    • Klassen
  • I/O - Input/Output
    • Output (terminal)
      • God utskriftskultur
    • Input
      • Fra bruker
      • Fra fil
    • Output (fil)
      • Gjenbruk
  • char og tallsystem

Verdi

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​char og tallsystem

"Dette er en String verdi"

"Dette er en annen String verdi"

"2"

"Alt innenfor sitattegn er String verdi"

Variabel

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​char og tallsystem

// Variabeldeklarasjon
String variabelEn;

// Initiering
variabelEn = "String verdi";

// Deklarasjon m/initiering
String variabelTo = "Trenger bedre variabelnavn";

Variabel

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​char og tallsystem

// Variabelinitiering

String setning = "INF1000 er gøy";

String leddsetning = ", siden programmering er gøy";

// Variabelmanipulasjon
String helsetning = setning + leddsetning;

// Hvordan ser den nå ut?

Variabel

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

// Variabelinitiering

String setning = "INF1000 er gøy";

String leddsetning = ", siden programmering er gøy";

// Variabelmanipulasjon
String helsetning = setning + leddsetning;

// Hvordan ser den nå ut?

"INF1000 er gøy, siden programmering er gøy";

Variabel

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

// Variabelmutasjon

// fra int:

int a = 4;
int b = 10;
a += b; // de legges sammen, sant?

Variabel

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

// Variabelmutasjon

// fra int:

int a = 4;
int b = 10;
a += b; // de legges sammen, sant?
// a = 14

Variabel

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​​char og tallsystem

// Variabelmutasjon

// fra int:

int a = 4;
int b = 10;
a += b; // de legges sammen, sant?

// String er litt annerledes
String grav = "grave";
String mask = "maskin";

grav += maskin; // Resultat?

Variabel

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

// Variabelmutasjon

// fra int:

int a = 4;
int b = 10;
a += b; // de legges sammen, sant?

// String er litt annerledes
String grav = "grave";
String mask = "maskin";

grav += maskin; // Resultat?

"gravemaskin"

Variabel

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

// Variabelmutasjon

// fra int:

int a = 4;
int b = 10;
a += b; // de legges sammen, sant?

// String er litt annerledes
String grav = "grave";
String mask = "maskin";

grav += maskin; // Resultat?

// Utvidet
String prod = "produsent";
String led = "ledelsen";

grav += prod;
grav += led; // Resultat?

Variabel

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

// Variabelmutasjon

// fra int:

int a = 4;
int b = 10;
a += b; // de legges sammen, sant?

// String er litt annerledes
String grav = "grave";
String mask = "maskin";

grav += maskin; // Resultat?

// Utvidet
String prod = "produsent";
String led = "ledelsen";

grav += prod;
grav += led; // Resultat?

"gravemaskinprodusentledelsen"

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

  • JavaDoc er din venn:
    • http://docs.oracle.com/
      • javase/8/docs/api/
        • java/lang/String.html
  • String.java

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Noen kjente metoder:

  • .length()
  • .equals(String other)
  • .charAt(int index)
  • .subString(int beginIndex)
  • .indexOf(String str)

 

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Noen kjente metoder:

  • .length()
    • returnerer lengden av String-verdien
  • .equals(String other)
  • .charAt(int index)
  • .subString(int beginIndex)
  • .indexOf(String str)

 

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Noen kjente metoder:

  • .length()
    • returnerer lengden av String-verdien
  • .equals(String other)
  • .charAt(int index)
  • .subString(int beginIndex)
  • .indexOf(String str)

 

String lengdeEksempel = "123456789";
int lengde = lengdeEksempel.length();

// resultatet?

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Noen kjente metoder:

  • .length()
    • returnerer lengden av String-verdien
  • .equals(String other)
  • .charAt(int index)
  • .subString(int beginIndex)
  • .indexOf(String str)

 

String lengdeEksempel = "123456789";
int lengde = lengdeEksempel.length();

// resultatet?

// lengde = 9

lengdeEksempel = "verre eksempel";
lengde = lengdeEksempel.length()

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Noen kjente metoder:

  • .length()
    • returnerer lengden av String-verdien
  • .equals(String other)
  • .charAt(int index)
  • .subString(int beginIndex)
  • .indexOf(String str)

 

String lengdeEksempel = "123456789";
int lengde = lengdeEksempel.length();

// resultatet?

// lengde = 9

lengdeEksempel = "verre eksempel";
lengde = lengdeEksempel.length()

// lengde = 14

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Noen kjente metoder:

  • .length()
    • returnerer lengden av String-verdien
  • .equals(String other)
    • ​returnerer boolean true hvis identiske
  • .charAt(int index)
  • .subString(int beginIndex)
  • .indexOf(String str)

 

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Noen kjente metoder:

  • .equals(String other)
    • ​returnerer boolean true hvis identiske
  • .charAt(int index)
  • .subString(int beginIndex)
  • .indexOf(String str)

 

String strengEn = "identisk";

boolean erLike = strengEn.equals("identisk");

// true/false?

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Noen kjente metoder:

  • .equals(String other)
    • ​returnerer boolean true hvis identiske
  • .charAt(int index)
  • .subString(int beginIndex)
  • .indexOf(String str)

 

String strengEn = "identisk";

boolean erLike = strengEn.equals("identisk");

// true

String strengTo = "identiske";

erLike = strengEn.equals(strengTo);

// true/false?

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Noen kjente metoder:

  • .equals(String other)
    • ​returnerer boolean true hvis identiske
  • .charAt(int index)
  • .subString(int beginIndex)
  • .indexOf(String str)

 

String strengEn = "identisk";

boolean erLike = strengEn.equals("identisk");

// true

String strengTo = "identiske";

erLike = strengEn.equals(strengTo);

// false

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Noen kjente metoder:

  • .length()
    • returnerer lengden av String-verdien
  • .equals(String other)
    • ​returnerer boolean true hvis identiske
  • .charAt(int index)
    • returnerer char'en på index-posisjonen
  • .subString(int beginIndex)
  • .indexOf(String str)

 

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Noen kjente metoder:

  • .charAt(int index)
    • returnerer char'en på index-posisjonen
  • .subString(int beginIndex)
  • .indexOf(String str)

 

String cashMoney = "$money!";

if (cashMoney.charAt(0) == '$') {
    // cash money
}
else {
    // no money
}

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Noen kjente metoder:

  • .charAt(int index)
    • returnerer char'en på index-posisjonen
  • .subString(int beginIndex)
  • .indexOf(String str)

 

String cashMoney = "$money!";

if (cashMoney.charAt(0) == '$') {
    // cash money
    // cash IN
}
else {
    // no money
}

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Noen kjente metoder:

  • .length()
    • returnerer lengden av String-verdien
  • .equals(String other)
    • ​returnerer boolean true hvis identiske
  • .charAt(int index)
    • returnerer char'en på index-posisjonen
  • .subString(int beginIndex)
    • returnerer ny String-verdi fra beginIndex -posisjonen
  • .indexOf(String str)

 

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Noen kjente metoder:

  • .subString(int beginIndex)
    • returnerer ny String-verdi fra beginIndex -posisjonen
  • .indexOf(String str)

 

String cashMoney = "$1000";
String cash;

if (cashMoney.charAt(0) == '£') {
    cash = cashMoney.subString(1) + " more cash!";
}
else {
    cash = cashMoney.subString(0) + ", wrong cash...";
}

// do we get cash, or wrong cash?

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Noen kjente metoder:

  • .length()
    • returnerer lengden av String-verdien
  • .equals(String other)
    • ​returnerer boolean true hvis identiske
  • .charAt(int index)
    • returnerer char'en på index-posisjonen
  • .subString(int beginIndex)
    • returnerer ny String-verdi fra beginIndex -posisjonen
  • .indexOf(String str)
    • returnerer posisjonen på start av String str

 

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Noen kjente metoder:

  • .indexOf(String str)
    • returnerer posisjonen på start av String str

 

String cashMoney = "Inntekten sist uke var $1000";

int cashIndex = cashMoney.indexOf("$");

// kan dette brukes til da?

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Noen kjente metoder:

  • .indexOf(String str)
    • returnerer posisjonen på start av String str

 

String cashMoney = "Inntekten sist uke var $1000";

int cashIndex = cashMoney.indexOf("$");

// kan brukes for å hente ut noe!

String cash = cashMoney.subString(cashIndex);

// cash = "$1000"

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Til slutt:

  • Representerer en egenskap/verdi

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Til slutt:

  • Representerer en egenskap/verdi
  • Kan ikke tilfredstille relasjoner til andre klasser

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Til slutt:

  • Representerer en egenskap/verdi
  • Kan ikke tilfredstille relasjoner til andre klasser
    • DVD =/= String
    • Person =/= String

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Til slutt:

  • Representerer en egenskap/verdi
  • Kan ikke tilfredstille relasjoner til andre klasser
    • DVD =/= String
    • Person =/= String
  • Bør bare være den ene egenskapen den inneholder

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Til slutt:

  • Representerer en egenskap/verdi
  • Kan ikke tilfredstille relasjoner til andre klasser
    • DVD =/= String
    • Person =/= String
  • Bør bare være den ene egenskapen den inneholder
    • String navn;
    • String tittel;
    • String addresse;
    • etc.

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Til slutt:

  • Funker altså bra som nøkkelverdi i (Hash)Map

 

 

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Til slutt:

  • Funker altså bra som nøkkelverdi i (Hash)Map
    • Nøkler representerer typisk en unik egenskap ved en klasse

 

 

String uniktNavn = "uniktNavn";
Person p = new Person(uniktNavn);
navneliste.put(uniktNavn, p);

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Til slutt:

  • Funker altså bra som nøkkelverdi i (Hash)Map
    • Nøkler representerer typisk en unik egenskap ved en klasse

 

 

  • Ikke som representasjon for en annen klasse
String uniktNavn = "uniktNavn";
Person p = new Person(uniktNavn);
navneliste.put(uniktNavn, p);

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Til slutt:

  • Funker altså bra som nøkkelverdi i (Hash)Map
    • Nøkler representerer typisk en unik egenskap ved en klasse

 

 

  • Ikke som representasjon for en annen klasse
    • Andre klasser har mer egenskaper enn det en String har informasjon om.
String uniktNavn = "uniktNavn";
Person p = new Person(uniktNavn);
navneliste.put(uniktNavn, p);
String eier;
String laaner;
// vs.
Person eier;
Person laaner;

Klassen

String

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Til slutt:

  • Funker altså bra som nøkkelverdi i (Hash)Map
    • Nøkler representerer typisk en unik egenskap ved en klasse

 

  • Ikke som representasjon for en annen klasse
    • Andre klasser har mer egenskaper enn det en String har informasjon om.
    • Enkelt å få String egenskapen fra Person - ikke motsatt
String uniktNavn = "uniktNavn";
Person p = new Person(uniktNavn);
navneliste.put(uniktNavn, p);
String eier;
String laaner;
// vs.
Person eier;
Person laaner;

Output

I/O

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

God utskriftskultur

  • Tydelige utskrifter
  • Informative utskrifter
  • Poeng i utskriftene

Output

I/O

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

God utskriftskultur

  • Tydelige utskrifter
  • Informative utskrifter
  • Poeng i utskriftene
int a = 1;
int b = 2;
System.out.println(a+b); // output: 3
// ikke særlig informativt

Output

I/O

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

God utskriftskultur

  • Tydelige utskrifter
  • Informative utskrifter
  • Poeng i utskriftene
int a = 1;
int b = 2;
println(a+b); // output: 3
// ikke særlig informativt

println(a + " + " + b + " = " + a+b);
// bedre, men er det riktig?

Output

I/O

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

God utskriftskultur

  • Tydelige utskrifter
  • Informative utskrifter
  • Poeng i utskriftene
int a = 1;
int b = 2;
println(a+b); // output: 3
// ikke særlig informativt

println(a + " + " + b + " = " + a+b);
// output = '1 + 2 = 12'
// bedre, men er det riktig? Nei

println(a + " + " + b + " = " + (a+b));
// utskriftsmetoden tolker a+b som to
// _separate_ strings

Input

I/O

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Fra bruker

  • Utnytt den gode utskriftskulturen
    • Informer hva som forventes
  • Gjerne gi eksempler
  • Gjør det intuitivt

Input

I/O

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Fra bruker

  • Utnytt den gode utskriftskulturen
    • Informer hva som forventes
  • Gjerne gi eksempler
  • Gjør det intuitivt
Scanner stdin = new Scanner(System.in);

String navn = stdin.nextLine();

Input

I/O

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Fra bruker

  • Utnytt den gode utskriftskulturen
    • Informer hva som forventes
  • Gjerne gi eksempler
  • Gjør det intuitivt
Scanner stdin = new Scanner(System.in);

// Gi beskjed hva som forventes
println("Hva er navnet ditt?");
String navn = stdin.nextLine();

Input

I/O

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Fra bruker

  • Utnytt den gode utskriftskulturen
    • Informer hva som forventes
  • Gjerne gi eksempler
  • Gjør det intuitivt
Scanner stdin = new Scanner(System.in);

// Gi beskjed hva som forventes
println("Hva er navnet ditt?");
String navn = stdin.nextLine();

Input

I/O

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Fra bruker

  • Utnytt den gode utskriftskulturen
    • Informer hva som forventes
  • Gjerne gi eksempler
  • Gjør det intuitivt
Scanner stdin = new Scanner(System.in);

// Gi beskjed hva som forventes
println("Hva er navnet ditt?");
String navn = stdin.nextLine();

// Nå har vi lært
println("Hva er din alder?");
String alderStreng = stdin.nextLine();
int alder = Integer.parseInt(alderStreng);

Input

I/O

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Fra bruker

  • Utnytt den gode utskriftskulturen
    • Informer hva som forventes
  • Gjerne gi eksempler
  • Gjør det intuitivt
Scanner stdin = new Scanner(System.in);

// Gi beskjed hva som forventes
println("Hva er navnet ditt?");
String navn = stdin.nextLine();

// Nå har vi lært, men husk eksempel
println("Hva er din alder? (skriv kun _et tall_, f.eks: 26");
String alderStreng = stdin.nextLine();
int alder = Integer.parseInt(alderStreng);

Input

I/O

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Fra bruker

  • Utnytt den gode utskriftskulturen
    • Informer hva som forventes
  • Gjerne gi eksempler
  • Gjør det intuitivt
Scanner stdin = new Scanner(System.in);

int sum = 0;

println("Skriv et tall og trykk " +
        "enter for aa summere");

int inntastet = Integer.parseInt(stdin.nextLine());
while (inntastet != 0) {
    sum += inntastet;
    print("Summen er nå: " + sum + ".");
    print(" Skriv inn et nytt tall");
    println(", eller rykk 0 for aa avslutte.");
    inntastet = Integer.parseInt(stdin.nextLine());
}

Input

I/O

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Fra fil

  • Finn mønsteret
  • Sjekk at din innlesing er riktig ift. dette mønsteret (utskrifter)
  • Deretter kan du bruke mønsteret til det du vil

Output

I/O

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

Gjenbruk

  • Samme format som det som ble lest inn.
  • Gjenbruk metoder som returnerer String fra objektene, og bruk disse når du skriver til fil.
    • F.eks. informasjonsutskrifter

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

// deklarasjon
char etTegn;

// sett verdi
etTegn = '1';

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

// deklarasjon
char etTegn;

// sett verdi
etTegn = '1';

// alle _enkelttegn_ innenfor 'e'nkeltquotes er en char
// ikke lov med flere 'to' tegn

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

// deklarasjon
char etTegn;

// sett verdi
etTegn = '1';

// alle _enkelttegn_ innenfor 'e'nkeltquotes er en char
// ikke lov med flere 'to' tegn

// kan gjør String til char[] array
String titallString = "0123456789";
char[] titallsystemet = titallString.toCharArray();

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

// deklarasjon
char etTegn;

// sett verdi
etTegn = '1';

// alle _enkelttegn_ innenfor 'e'nkeltquotes er en char
// ikke lov med flere 'to' tegn

// kan gjør String til char[] array
String titallString = "0123456789";
char[] titallsystemet = titallString.toCharArray();

// = {'0','1','2','3','4','5','6','7','8','9'};

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

// deklarasjon
char etTegn;

// sett verdi
etTegn = '1';

// alle _enkelttegn_ innenfor 'e'nkeltquotes er en char
// ikke lov med flere 'to' tegn

// kan gjør String til char[] array
String titallString = "0123456789";
char[] titallsystemet = titallString.toCharArray();

// = {'0','1','2','3','4','5','6','7','8','9'};

// da kan man endre tegn direkte i arrayen
titallsystemet[5] = 'f';

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

// deklarasjon
char etTegn;

// sett verdi
etTegn = '1';

// alle _enkelttegn_ innenfor 'e'nkeltquotes er en char
// ikke lov med flere 'to' tegn

// kan gjør String til char[] array
String titallString = "0123456789";
char[] titallsystemet = titallString.toCharArray();

// = {'0','1','2','3','4','5','6','7','8','9'};

// da kan man endre tegn direkte i arrayen
titallsystemet[5] = 'f';

// = {'0','1','2','3','4','f','6','7','8','9'};

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

// deklarasjon
char etTegn;

// sett verdi
etTegn = '1';

// alle _enkelttegn_ innenfor 'e'nkeltquotes er en char
// ikke lov med flere 'to' tegn

// kan gjør String til char[] array
String titallString = "0123456789";
char[] titallsystemet = titallString.toCharArray();

// = {'0','1','2','3','4','5','6','7','8','9'};

// da kan man endre tegn direkte i arrayen
titallsystemet[5] = 'f';

// = {'0','1','2','3','4','f','6','7','8','9'};

// og lage en ny streng basert på arrayen
titallString = new String(titallsystemet);

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

// deklarasjon
char etTegn;

// sett verdi
etTegn = '1';

// alle _enkelttegn_ innenfor 'e'nkeltquotes er en char
// ikke lov med flere 'to' tegn

// kan gjør String til char[] array
String titallString = "0123456789";
char[] titallsystemet = titallString.toCharArray();

// = {'0','1','2','3','4','5','6','7','8','9'};

// da kan man endre tegn direkte i arrayen
titallsystemet[5] = 'f';

// = {'0','1','2','3','4','f','6','7','8','9'};

// og lage en ny streng basert på arrayen
titallString = new String(titallsystemet);

// = "01234f6789";

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

  • char er tall

Så hvorfor tallsystem?

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

  • char er tall

Så hvorfor tallsystem?

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

  • char er tall
  • kan regnes med

Så hvorfor tallsystem?

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

  • char er tall
  • kan regnes med

Så hvorfor tallsystem?

char sisteBokstav = 'z'; // 122
char forsteBokstav = 'a'; // 97

int antallBokstaver = sisteBokstav - forsteBokstav; // 122 - 97 = ?

System.out.println("Det er " + antallBokstaver + " mellom '" + 
                   forsteBokstav + "' og '" + sisteBokstav + "'");

// Det er 25 mellom 'a' og 'z'

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

  • char er tall
  • kan regnes med

Så hvorfor tallsystem?

char sisteBokstav = 'z'; // 122
char forsteBokstav = 'a'; // 97

int antallBokstaver = sisteBokstav - forsteBokstav; // 122 - 97 = ?

System.out.println("Det er " + antallBokstaver + " mellom '" + 
                   forsteBokstav + "' og '" + sisteBokstav + "'");

// Det er 25 mellom 'a' og 'z'

public boolean erLitenBokstav(char c) {
    boolean erLiten = false; // false inntil det motsatte er bevist
    if ( 'a' <= c && c <= 'z' ) {
        // det er en liten bokstav
        erLiten = true;
    }
    return erLiten;
}

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

  • char er tall
  • kan regnes med
  • viktig å forstå binære tall

Så hvorfor tallsystem?

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

  • char er tall
  • kan regnes med
  • viktig å forstå binære tall

Så hvorfor tallsystem?

01110101 w00t ?

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

  • char er tall
  • kan regnes med
  • viktig å forstå binære tall

Så hvorfor tallsystem?

01110101 w00t ?

128 64 32 16 8 4 2 1

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

  • char er tall
  • kan regnes med
  • viktig å forstå binære tall

Så hvorfor tallsystem?

01110101 w00t ?

128 64 32 16 8 4 2 1
  0  1  1  1 0 1 0 1

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

  • char er tall
  • kan regnes med
  • viktig å forstå binære tall

Så hvorfor tallsystem?

01110101 w00t ?

128 64 32 16 8 4 2 1
  0  1  1  1 0 1 0 1

64 + 32 + 16 + 4 + 1 = 113

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

  • char er tall
  • kan regnes med
  • viktig å forstå binære tall

Så hvorfor tallsystem?

01110101 w00t ?

128 64 32 16 8 4 2 1
  0  1  1  1 0 1 0 1

64 + 32 + 16 + 4 + 1 = 113

113 = 'q'

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

  • char er tall
  • kan regnes med
  • viktig å forstå binære tall

Så hvorfor tallsystem?

01110101 w00t ?

128 64 32 16 8 4 2 1
  0  1  1  1 0 1 0 1

64 + 32 + 16 + 4 + 1 = 113

113 = 'q'

2^7 2^6 2^5 2^4 2^3 2^2 2^1 2^0
128  64  32  16   8   4   2   1
  0   1   1   1   0   1   0   1

0*2^7 + 1*2^6 + 1*2^5 + 1*2^4 +
0*2^3 + 1*2^2 + 0*2^1 + 1*2^0 = 113

    0 +    65 +    32 +    16 +
    0 +     8 +     0 +     1 = 113

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

  • char er tall
  • kan regnes med
  • viktig å forstå binære tall
  • andre tallsystem bekrefter forståelsen av binære tall

Så hvorfor tallsystem?

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

  • andre tallsystem bekrefter forståelsen av binære tall

Så hvorfor tallsystem?

128 64 32 16 8 4 2 1
  0  1  1  1 0 1 0 1

16-tallsystemet
8 4 2 1 | 8 4 2 1
0 1 1 1   0 1 0 1

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

  • andre tallsystem bekrefter forståelsen av binære tall

Så hvorfor tallsystem?

128 64 32 16 8 4 2 1
  0  1  1  1 0 1 0 1

16-tallsystemet
8 4 2 1 | 8 4 2 1
0 1 1 1   0 1 0 1
75

4-tallsystemet
2 1 | 2 1 | 2 1 | 2 1
0 1   1 1   0 1   0 1

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

  • andre tallsystem bekrefter forståelsen av binære tall

Så hvorfor tallsystem?

128 64 32 16 8 4 2 1
  0  1  1  1 0 1 0 1

16-tallsystemet
8 4 2 1 | 8 4 2 1
0 1 1 1   0 1 0 1
75

4-tallsystemet
2 1 | 2 1 | 2 1 | 2 1
0 1   1 1   0 1   0 1
1311

8-tallsystemet
(4) 2 1 | 4 2 1 | 4 2 1

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

  • andre tallsystem bekrefter forståelsen av binære tall

Så hvorfor tallsystem?

128 64 32 16 8 4 2 1
  0  1  1  1 0 1 0 1

16-tallsystemet
8 4 2 1 | 8 4 2 1
0 1 1 1   0 1 0 1
75

4-tallsystemet
2 1 | 2 1 | 2 1 | 2 1
0 1   1 1   0 1   0 1
1311

8-tallsystemet
(4) 2 1 | 4 2 1 | 4 2 1
 0  0 1   1 1 0   1 0 1
165

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

  • andre tallsystem bekrefter forståelsen av binære tall

Så hvorfor tallsystem?

128 64 32 16 8 4 2 1
  0  1  1  1 0 1 0 1

16-tallsystemet
8 4 2 1 | 8 4 2 1
0 1 1 1   0 1 0 1
75

4-tallsystemet
2 1 | 2 1 | 2 1 | 2 1
0 1   1 1   0 1   0 1
1311

8-tallsystemet
(4) 2 1 | 4 2 1 | 4 2 1
 0  0 1   1 1 0   1 0 1
165
1 * 8^2
6 * 8^1
5 * 8^0

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

  • andre tallsystem bekrefter forståelsen av binære tall

Så hvorfor tallsystem?

128 64 32 16 8 4 2 1
  0  1  1  1 0 1 0 1

11-tallsystemet (0123456789A)
113 / 11 = 10
A
113 - 10*11 = 113 - 110 = 3
A3

13-tallsystemet
113 / 13 = 8
113 - 8*13 = 113 - 104 = 9
89

Posisjonen som avgjør

8 * 13^1
9 * 13^0

char og tallsystem

  • String

    • Verdi

    • Variabel

    • Klassen

  • I/O - Input/Output

    • Output (terminal)

      • God utskriftskultur

    • Input

      • Fra bruker

      • Fra fil

    • Output (fil)

      • Gjenbruk

  • ​​​​char og tallsystem

  • andre tallsystem bekrefter forståelsen av binære tall

Så hvorfor tallsystem?

128 64 32 16 8 4 2 1
  0  1  1  1 0 1 0 1

11-tallsystemet (0123456789A)
113 / 11 = 10
A
113 % 11 = 3
A3

13-tallsystemet
113 / 13 = 8
113 % 13 = 9
89

Posisjonen som avgjør

8 * 13^1
9 * 13^0

String

&

Input/Output

The End

Repetisjon: String & I/O

By gardir

Repetisjon: String & I/O

Dette er slides for repetisjonskurset i INF1000 angående "String & I/O"

  • 1,712