1. Heltals bogstaver

Og nu til et nyt interessant emne - bogstavelige ord. Data skrevet direkte i programkoden kaldes bogstaver . Vi taler ikke om gamle data, men værdierne af primitive typer og typen String.

Antag for eksempel, at du har følgende kode:

Kode Bogstaver
int a = 5;
int b = a + 10;
String s = "Sum=" + (a + b);
5
10
"Sum="

Bogstaverne i denne kode er tallet , tallet og strengen ' ' .510Sum =

I Java har alt, inklusive bogstaver, en type. Som standard er alle heltal (heltal) i koden ints. Int-typen er standard Java-heltalstypen.

Hvad mere er, hvis du beslutter dig for at tildele et heltal literal til en byte-variabel eller en kort variabel i din kode, vil der ikke være nogen problemer. Du skal blot sikre dig, at den bogstavelige værdi ligger inden for rækkevidden af ​​værdier, som variablens type kan gemme.

Java-kompileren er smart nok til at forstå, at en bytevariabel kan tildeles heltal-literalen 100 uden at skabe problemer.

Eksempler:

Kode Beskrivelse
int a = 300;
Dette vil kompilere fint.
byte a = 100; 
Dette vil kompilere fint.
byte a = 300; 
Der vil være en kompileringsfejl, fordi den maksimale byteværdi er 127.

Du kan også skrive longbogstaver i din kode. For at gøre dette skal du tilføje det latinske bogstav 'L' eller 'l' i slutningen af ​​heltal.

Eksempler:

Kode Beskrivelse
long a = 3000000000L; 
Dette vil kompilere fint.
long a = 3000000000; 
Kompileringsfejl: 3 milliarder er for stort til en int literal.
int a = 3000000000L; 
Kompileringsfejl: det bogstavelige er en lang, men variablen er en int. Derudover er 3 milliarder mere end den maksimale int.

Har du bemærket, hvor svært det er at læse store tal på 10 eller flere cifre? Du kan ikke umiddelbart se, om koden siger 3 milliarder eller 30 milliarder. For at gøre koden mere læsbar (og det er vigtigt!), tillader Java at indsætte understregninger i numeriske bogstaver (de påvirker ikke værdien af ​​tallet).

Eksemplet ovenfor kan omskrives med understregninger for at gøre det lidt klarere:

Kode Beskrivelse
long a = 3_000_000_000L; 
Dette vil kompilere fint.
long a = 3_000_000_000; 
Kompileringsfejl: 3 milliarder er for stort til en int literal.
int a = 3_000_000_000L; 
Kompileringsfejl: det bogstavelige er en lang, men variablen er en int. Derudover er 3 milliarder mere end den maksimale int.

Men vi kan ikke bruge kommaer i numeriske bogstaver, fordi de allerede bruges til et andet formål. For eksempel til at adskille argumenter fra hinanden, når du kalder en metode.



2. Reelle tal bogstaver

I din kode kan du angive ikke kun heltal, men også bogstaver med flydende komma (reelle tal).

Faktisk er reglen ret simpel: Hvis et tal i koden har et decimaltegn, så er tallet et flydende decimaltal. Og ikke hvilken som helst bogstavelig, men en doublebogstavelig.

Du kan oprette et flydende bogstav, men du skal sætte bogstavet 'F' (eller 'f') i slutningen af ​​tallet for at gøre det .

Eksempler:

Kode Beskrivelse
double a = 100.0; 
Dette vil kompilere fint.
double a = 100.;
Dette vil kompilere fint.
double a = .0;
Dette vil kompilere fint.
float a = 100.0f; 
Dette vil kompilere fint.
float a = 100.0; 
Der vil være en kompileringsfejl: variablen er en float, men den bogstavelige er en dobbelt.

Forresten kan du eksplicit konvertere et heltal til en flydende eller dobbelt bogstav ved blot ). Eksempler: appending the suffix 'F' (for float) or D (for double)

Kode Beskrivelse
double a = 100D; 
Dette vil kompilere fint.
float a = 100F; 
int a = 300D; 
Der vil være en kompileringsfejl: variablen er en int, men den bogstavelige er en double.

Flydende-komma-literaler kan bruge videnskabelig notation : Ud over den fortegnede del af tallet kan du også angive en potens af ti. Eksempel:

1.23E2
Bogstavelig Matematisk notation Endelig værdi
1.23 * 102
123.0
1.23E3
1.23 * 103
1230.0
1.23E-6
1.23 * 10-6
0.00000123
1E6
1.0 * 106
1000000.0
1E-10
1.0 * 10-10


3. Streng bogstaver

Du kan også angive hele tekstlinjer i din kode. For at fortælle compileren om at behandle en streng som data (en bogstavelig) og ikke som en del af koden, er hele strengen omgivet af dobbelte anførselstegn på begge sider.

Hvis en enkelt kodelinje har flere dobbelte anførselstegn, opdeles de i par. Det første dobbelte anførselstegn angiver begyndelsen af ​​et bogstav. Den næste angiver slutningen af ​​det bogstavelige. Den næste efter det markerer igen begyndelsen på en ny bogstavelig. Og den næste markerer afslutningen på den anden bogstavelige. Og så videre.

Hver sådan bogstavelig er en 0.0000000001.

Eksempler

Kode Forklaring
String
Der er 5 bogstaver i en linje. Hver af dem består af et enkelt  "+" + "+" + "+" + "+" + "+"tegn
+
Dette bogstav er en tom streng. En streng uden tegn.
""
Der er to bogstaver her. Resultatet bliver strengen ' "2+3" + "-5"', ikke et tal
2+3-5
Der er også to bogstaver her. Der er ingen returopgørelse her.

Hvis en streng er for lang, kan den opdeles i flere linjer og limes sammen med 'plusoperatoren':

Kode Forklaring
"return" + ";"
Hvis du sender denne linje til skærmen, vil al teksten blive vist på en enkelt linje!


4. Karakterbogstaver

Du kan ikke kun angive strengliteraler i din kode, men også bogstaver bestående af individuelle tegn. Bemærk, at vi ikke taler om en streng bestående af et enkelt tegn, men snarere om bogstaver, hvis type er String s = "I hold it true, whate'er befall, " + "I feel it when I sorrow most; " + "'Tis better to have loved and lost " + "Than never to have loved at all.";.

I modsætning til en streng er en bogstavelig karakter omgivet af enkelte anførselstegn . Inde i de enkelte anførselstegn skal der være et tegn og kun et tegn. Du kan ikke bruge tomme enkelte anførselstegn.

Eksempler:

Kode Forklaring
char
En bogstavelig, hvis type er char. Den indeholder det latinske bogstav 'A'.
'A'
En bogstavelig, hvis type er char. Den indeholder '@'-symbolet
'@' 
En bogstavelig, hvis type er char. Den indeholder et japansk tegn. Og dette er også muligt.
'' 
En bogstavelig, hvis type er char. Den indeholder et Unicode-tegn, der er angivet ved dets nummer.

Det sidste eksempel tildeler et Unicode-tegn ved hjælp af en speciel notation: først har vi præfikset '\u1f3a', efterfulgt af 4 hexadecimale tegn. De næste lektioner indeholder detaljerede oplysninger om dette.