/ / Programmeren: Java. Gegevenstypen

Programmeren: Java. Datatypen

Het gegevenstype wordt bepaald door drie componenten:

  • een set waarden of objecten;
  • een set bewerkingen die kan worden toegepast op alle waarden in een set;
  • presentatie van gegevens die hun opslag bepalen.

Wat zijn de gegevenstypen in Java?

De programmeertaal bevat een aantal vooraf gedefinieerde ingebouwde typen en stelt programmeurs in staat hun eigen aangepaste typen te definiëren.

In Java zijn gegevenstypen onderverdeeld in primitief en referentieel.

"Primitief" betekent dat het verder issplitsing is onmogelijk. Breidt de programmeertaal uit of wijzigt deze niet. Dit gegevenstype wordt beschreven door primitieve en andere gebruikerstypen.

Een variabele van het primitieve type bevat een waarde en een referentie bevat het adres van een object in het geheugen.

java gegevenstypen

Java-taal. Gegevenstypen: tijd en datum

Samengestelde gegevens zijn onderverdeeld in klassen, interfaces en arrays. De leden van het interfacetype zijn abstracte methoden en constanten. In Java worden datum- en tijdgegevenstypen gespecificeerd door de Date () constructor:

  • d = nieuwe datum ().

Een voorbeeld van een link is ook een string.

Java-taal. Gegevenstypen: String

Een tekenreeks is een klasse die is gedefinieerd in de Java-bibliotheek en die kan worden gebruikt om met tekst (een reeks tekens) te werken.

De declaratie van de referentie String-variabele is als volgt: String str.

Voordat u een objectverwijzing aan een dergelijke variabele toewijst, moet u deze maken met de nieuwe operator. U kunt bijvoorbeeld een object van klasse String maken met de tekst "Hallo":

  • str = new String ("Hallo").

Wat gebeurt er als deze code wordt uitgevoerd?Eerst wordt geheugen toegewezen en de naam str wordt geassocieerd met deze geheugencel. Dit is niet anders dan het declareren van een primitieve variabele. Het tweede codefragment creëert een String-object in het geheugen met de tekst "Hallo" en slaat er een link naar op (of een geheugenadres) in str.

Java-referentiegegevenstypen zijn ook toegestaanwijs een verwijzing toe aan een object dat is opgeslagen in de ene variabele, een andere. Beiden verwijzen naar hetzelfde object in het geheugen. Dit kan als volgt worden bereikt:

  • String str1;
  • String str2;
  • str1 = nieuwe string ("Hallo");
  • str2 = str1;

Er is een null-permalink die aan elke referentievariabele kan worden toegewezen. Het verwijst niet naar een object.

Met de nieuwe operator wordt een String-object gemaakt.Maar aangezien snaren vaak worden gebruikt, is er een eenvoudigere manier om er een te maken. Alle letterlijke tekenreeksen, d.w.z. een reeks tekens tussen dubbele aanhalingstekens, worden behandeld als String-objecten. Daarom kunnen in plaats van de nieuwe operator tekenreeksen worden gebruikt:

  • String str1 = "Hallo".

Primitieve Java-gegevenstypen - byte, kort, int,long, char, float, double en boolean. Ze zijn onderverdeeld in twee categorieën: logisch en numeriek. Deze laatste kunnen worden onderverdeeld in gehele getallen en drijvende-kommagetallen.

Java integer-gegevenstypen zijn numerieke typen waarvan de waarden gehele getallen zijn. Er zijn er vijf: byte, short, int, long en char.

java gegevenstypen

Int

Int is een 32-bits primitief gegevenstype. De variabele neemt 32 bits geheugen in beslag. Het geldige bereik is van -2147483648 tot 2147483647 (-231 maximaal 231 - 1). Alle gehele getallen in dit bereik zijn letterlijke getallen of constanten. 10, -200, 0, 30, 19 zijn bijvoorbeeld letterlijke int. Ze kunnen worden toegewezen aan een int-variabele:

  • int num1 = 21;

Gehele literalen kunnen worden uitgedrukt als binaire, octale, decimale en hexadecimale getallen.

Wanneer een letterlijke letter begint bij nul en ten minste twee cijfers heeft, wordt deze beschouwd als geschreven in octaal formaat. 0 en 00 vertegenwoordigen dezelfde waarde - nul.

Alle int-literalen in hexadecimale indeling beginnen met 0x of 0x en ze moeten ten minste één hexadecimaal cijfer bevatten:

  • int num1 = 0x123.

Int literals in binair formaat beginnen met 0b of 0B:

  • int num1 = 0b10101.

java gegevenstypen tijd

Lang

Dit is een 64-bits ondertekend primitief type. Het wordt gebruikt wanneer het resultaat van berekeningen het bereik van int kan overschrijden. Lange afstand - van -263 maximaal 263- 1. Alle gehele getallen in dit bereik zijn lettertypes van het lange type.

Om int en lange gegevenstypen in Java te onderscheiden, eindigt een letterlijke van het laatste type altijd met L of l.

Lange integers kunnen ook worden uitgedrukt in octale, hexadecimale en binaire formaten.

Wanneer een lange letterlijke waarde is toegewezen aan een lange variabele,de Java-compiler controleert de toegewezen waarde en zorgt ervoor dat deze binnen een acceptabel bereik ligt; anders zal er een compilatiefout optreden.

Aangezien het int-bereik minder dan lang is,de waarde van een int-variabele kan altijd worden toegewezen aan een variabele van het type long. Maar omgekeerde toewijzing is niet mogelijk, zelfs niet binnen het bereik van int. Hiervoor wordt een expliciete verwijzing gebruikt:

  • num1 = (int) num2;

java string gegevenstypen

Byte

Byte is een primitief type met 8 bits. Het bereik is van -128 tot 127 (-27 maximaal 27 - 1). Dit is het kleinste type integer dat beschikbaar is in Java.In de regel worden bytevariabelen gebruikt wanneer een programma veel waarden in het bereik van -128 tot 127 gebruikt, of wanneer met binaire gegevens wordt gewerkt. In tegenstelling tot int en lange literalen, ontbreken byte-literalen. U kunt echter een bytevariabele toewijzen aan elke letterlijke int, omdat deze het bytebereik overschrijft.

Als de waarde van de variabele buiten het bereik valt, genereert Java een compileerfout.

Bovendien kunt u alleen een letterlijke int toewijzen, maar niet de waarde die is opgeslagen in de variabele int, omdat dit kan leiden tot verlies van precisie. Dit vereist een expliciet type cast.

  • b1 = (byte) num1.

Kort

Vertegenwoordigt een 16-bits primitief gegevenstype met geheel getal. Het bereik is van -32768 tot 32767 (of -215 maximaal 215 - 1).

Over het algemeen is er behoefte aan korte variabelentreedt op wanneer het programma een groot aantal waarden gebruikt die het opgegeven bereik niet overschrijden. Er is geen korte letterlijke tekst, maar toewijzing van elke letterlijke int binnen de korte reeks is mogelijk. De waarde van een bytevariabele kan altijd worden toegewezen. De rest van de regels voor het toewijzen van een int of lange korte variabele is hetzelfde als voor byte.

primitieve java-gegevenstypen

Char

Char is 16-bit ongetekendeen primitief gegevenstype dat een Unicode-teken vertegenwoordigt. Het ontbreken van een teken betekent dat de variabele geen negatieve waarde kan hebben. Het bereik is van 0 tot 65535, wat hetzelfde is als de Unicode-tekensetcodering. Een letterlijke vertegenwoordigt een char-waarde en kan worden uitgedrukt in de volgende vormen:

  • enkel aanhalingsteken;
  • opeenvolging van controletekens;
  • Unicode-besturingstekenreeks
  • een reeks octale controletekens.

Een symbool kan worden uitgedrukt door het in te sluitenenkele aanhalingstekens: char C1 = "A". Dubbele aanhalingstekens geven een letterlijke tekenreeks aan die niet kan worden toegewezen aan een char-variabele, zelfs als de tekenreeks uit slechts één teken bestaat. Dit is niet toegestaan ​​omdat er geen verwijzing naar een primitieve variabele is toegewezen. Alle letterlijke tekenreeksen zijn objecten van de klasse String en zijn daarom verwijzingen, terwijl letterlijke lettertypen van een primitief type zijn.

De letterlijke uitdrukking van de escape-reeks wordt geschreven als een backslash met het teken tussen enkele aanhalingstekens. Er zijn er acht: ‘n’, ‘r’, ‘f’, ‘b’, ‘t’, ‘\’, ‘’ ’,‘ ’’.

Unicode-besturingssequentie heeft de vorm"uxxxx", waarbij u (de backslash gevolgd door de kleine letter u) het begin aangeeft, en xxxxx staat voor precies vier hexadecimale cijfers van de tekencode in het Unicode-systeem. 'A' heeft bijvoorbeeld een waarde van 65 in decimaal en 41 in hex. Dit symbool kan dus worden weergegeven als "u0041".

De octale escape-reeks wordt geschreven als "nnn", waarbij n het octale cijfer (0-7) is. Het waardebereik is van "00" tot "377", waarbij 3778 komt overeen met 25510. Daarom wordt het gebruikt om te vertegenwoordigentekens met een code van 0 tot 255, noodzakelijk voor compatibiliteit met andere programmeertalen. In tegenstelling tot een Unicode-reeks, waar alle vier hexadecimale cijfers nodig zijn, kunt u hier 1, 2 of 3 octaal gebruiken: "n", "nn" of "nnn".

java referentiegegevenstypen

Booleaans type

Boolean heeft slechts twee geldige waarden:waar (waar) en onwaar (onwaar). Ze worden Booleaanse literalen genoemd. Een logische variabele kan niet naar een ander type worden gegoten en vice versa. Java bepaalt niet de grootte van boolean - het hangt af van de specifieke implementatie van de virtuele Java-machine.

Java-gegevenstypen met drijvende komma

Het nummer dat het fractionele deel in het geheugen bevatEen computer kan worden opgeslagen in een weergave met een vast aantal cijfers voor en na een punt of om zijn positie aan te geven. Omdat het aantal cijfers kan variëren, zeggen ze dat het punt "zweeft".

In Java gebruiken datatypen met drijvende komma 32 bits. Volgens de IEEE 754-standaard komt dit overeen met een enkele precisie, waardoor bijvoorbeeld de getallen 1,4 x 10 kunnen worden weergegeven-45 en 3,4 x 1038zowel positief als negatief.

Alle reële getallen die eindigen op f of F worden float-literals genoemd. Ze kunnen worden weergegeven in decimaal formaat en als wetenschappelijke notatie. Bijvoorbeeld:

  • drijven f1 = 3,25F;
  • drijver f2 = 32,5E-1F;
  • drijven f3 = 0.325E + 1F.

Het type definieert twee nullen: + 0,0F (of 0,0F) en -0,0F.Voor vergelijkingsdoeleinden worden beide nullen echter als gelijk beschouwd. Daarnaast definieerde hij twee soorten oneindigheid: positief en negatief. De resultaten van sommige bewerkingen (bijvoorbeeld 0,0F delen door 0,0F) zijn niet gedefinieerd en worden weergegeven door de speciale waarde NaN.

java gegevenstypen datum en tijd

Dubbele precisie

Double gebruikt 64 bits om getallen met drijvende komma op te slaan. Een dubbel precisienummer kan positieve en negatieve waarden van 4,9 x 10 vertegenwoordigen-324 en 1,7 x 10308.

Alle echte nummers zijn standaarddubbele literals. Optioneel kunnen ze expliciet worden aangegeven met het achtervoegsel d of D, bijvoorbeeld 19.27d. Een dubbele letterlijke letter kan worden uitgedrukt in decimale vorm en in wetenschappelijke notatie.

leuk vond:
0
Populaire berichten
Spirituele ontwikkeling
eten
Y