Skip to content

Commit dee2a3f

Browse files
author
martipatgra
committed
Deployed 6b64ee4 with MkDocs version: 1.4.2
1 parent 9eedf1a commit dee2a3f

File tree

3 files changed

+176
-53
lines changed

3 files changed

+176
-53
lines changed

search/search_index.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

sitemap.xml.gz

0 Bytes
Binary file not shown.

ud1/14datatypejava/index.html

Lines changed: 175 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -481,65 +481,65 @@
481481
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
482482

483483
<li class="md-nav__item">
484-
<a href="#primitivos" class="md-nav__link">
485-
Primitivos
484+
<a href="#tipos-primitivos" class="md-nav__link">
485+
🔹 Tipos primitivos
486486
</a>
487487

488-
<nav class="md-nav" aria-label="Primitivos">
488+
<nav class="md-nav" aria-label="🔹 Tipos primitivos">
489489
<ul class="md-nav__list">
490490

491491
<li class="md-nav__item">
492492
<a href="#byte" class="md-nav__link">
493-
byte
493+
🔸 byte
494494
</a>
495495

496496
</li>
497497

498498
<li class="md-nav__item">
499499
<a href="#short" class="md-nav__link">
500-
short
500+
🔸 short
501501
</a>
502502

503503
</li>
504504

505505
<li class="md-nav__item">
506506
<a href="#int" class="md-nav__link">
507-
int
507+
🔸 int
508508
</a>
509509

510510
</li>
511511

512512
<li class="md-nav__item">
513513
<a href="#long" class="md-nav__link">
514-
long
514+
🔸 long
515515
</a>
516516

517517
</li>
518518

519519
<li class="md-nav__item">
520520
<a href="#float" class="md-nav__link">
521-
float
521+
🔸 float
522522
</a>
523523

524524
</li>
525525

526526
<li class="md-nav__item">
527527
<a href="#double" class="md-nav__link">
528-
double
528+
🔸 double
529529
</a>
530530

531531
</li>
532532

533533
<li class="md-nav__item">
534534
<a href="#char" class="md-nav__link">
535-
char
535+
🔸 char
536536
</a>
537537

538538
</li>
539539

540540
<li class="md-nav__item">
541541
<a href="#boolean" class="md-nav__link">
542-
boolean
542+
🔸 boolean
543543
</a>
544544

545545
</li>
@@ -2256,65 +2256,65 @@
22562256
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
22572257

22582258
<li class="md-nav__item">
2259-
<a href="#primitivos" class="md-nav__link">
2260-
Primitivos
2259+
<a href="#tipos-primitivos" class="md-nav__link">
2260+
🔹 Tipos primitivos
22612261
</a>
22622262

2263-
<nav class="md-nav" aria-label="Primitivos">
2263+
<nav class="md-nav" aria-label="🔹 Tipos primitivos">
22642264
<ul class="md-nav__list">
22652265

22662266
<li class="md-nav__item">
22672267
<a href="#byte" class="md-nav__link">
2268-
byte
2268+
🔸 byte
22692269
</a>
22702270

22712271
</li>
22722272

22732273
<li class="md-nav__item">
22742274
<a href="#short" class="md-nav__link">
2275-
short
2275+
🔸 short
22762276
</a>
22772277

22782278
</li>
22792279

22802280
<li class="md-nav__item">
22812281
<a href="#int" class="md-nav__link">
2282-
int
2282+
🔸 int
22832283
</a>
22842284

22852285
</li>
22862286

22872287
<li class="md-nav__item">
22882288
<a href="#long" class="md-nav__link">
2289-
long
2289+
🔸 long
22902290
</a>
22912291

22922292
</li>
22932293

22942294
<li class="md-nav__item">
22952295
<a href="#float" class="md-nav__link">
2296-
float
2296+
🔸 float
22972297
</a>
22982298

22992299
</li>
23002300

23012301
<li class="md-nav__item">
23022302
<a href="#double" class="md-nav__link">
2303-
double
2303+
🔸 double
23042304
</a>
23052305

23062306
</li>
23072307

23082308
<li class="md-nav__item">
23092309
<a href="#char" class="md-nav__link">
2310-
char
2310+
🔸 char
23112311
</a>
23122312

23132313
</li>
23142314

23152315
<li class="md-nav__item">
23162316
<a href="#boolean" class="md-nav__link">
2317-
boolean
2317+
🔸 boolean
23182318
</a>
23192319

23202320
</li>
@@ -2342,15 +2342,18 @@
23422342

23432343
<h1 id="tipos-de-datos">💾 Tipos de datos</h1>
23442344
<p>Un tipo de datos es un conjunto de valores y un conjunto de operaciones definidas en ellos.
2345-
Se pueden clasificar en primitivos y objetos.
2346-
<img alt="Java" src="../../img/primitives.png" /></p>
2347-
<h2 id="primitivos">Primitivos</h2>
2348-
<p>Los primitivos son los más básicos y fundamentales, vienen integrados en Java. Especifican el tipo de valor almacenado en una variable y el tamaño de la memoria. Hay 8 tipos primitivos de datos integrados en el lenguaje Java. Estos incluyen: int, byte, short, long, float, double, boolean y char.</p>
2345+
Se pueden clasificar en primitivos y objetos.</p>
2346+
<p><img alt="Java" src="../../img/primitives.png" /></p>
2347+
<hr />
2348+
<h2 id="tipos-primitivos">🔹 Tipos primitivos</h2>
2349+
<p>Los <strong>primitivos son los más básicos y fundamentales, vienen integrados en Java</strong>.<br />
2350+
Especifican <strong>el tipo de valor almacenado en una variable y el tamaño en memoria</strong>. </p>
2351+
<p>👉 Existen <strong>8 tipos primitivos</strong> en Java: <code>byte</code>, <code>short</code>, <code>int</code>, <code>long</code>, <code>float</code>, <code>double</code>, <code>boolean</code> y <code>char</code>.</p>
23492352
<table>
23502353
<thead>
23512354
<tr>
2352-
<th>Primitive data type</th>
2353-
<th>Wrapper class</th>
2355+
<th>🧩 Primitive data type</th>
2356+
<th>📦 Wrapper class</th>
23542357
</tr>
23552358
</thead>
23562359
<tbody>
@@ -2388,44 +2391,82 @@ <h2 id="primitivos">Primitivos</h2>
23882391
</tr>
23892392
</tbody>
23902393
</table>
2391-
<h3 id="byte">byte</h3>
2392-
<p>Como su propio nombre denota, emplea un solo byte (8 bits) de almacenamiento. Esto permite almacenar valores en el rango [-128, 127]. Raramente se usa. Ocupa menos memoria y puede ser más rápido accedido.</p>
2394+
<hr />
2395+
<h3 id="byte">🔸 byte</h3>
2396+
<p>Como su propio nombre denota, emplea un solo byte (8 bits) de almacenamiento.</p>
2397+
<ul>
2398+
<li><strong>Tamaño:</strong> 8 bits </li>
2399+
<li><strong>Rango:</strong> [-128, 127] </li>
2400+
<li>Se usa raramente, ocupa muy poca memoria.</li>
2401+
</ul>
23932402
<div class="highlight"><pre><span></span><code><span class="w"> </span><span class="kt">byte</span><span class="w"> </span><span class="n">b</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">2</span><span class="p">;</span>
23942403
</code></pre></div>
2395-
<h3 id="short">short</h3>
2396-
<p>Usa el doble de almacenamiento que el anterior, es decir, ocupa 16 bits [-32.768, 32.767].</p>
2404+
<h3 id="short">🔸 short</h3>
2405+
<ul>
2406+
<li><strong>Tamaño</strong>: 16 bits</li>
2407+
<li><strong>Rango</strong>: [-32.768, 32.767]</li>
2408+
</ul>
23972409
<div class="highlight"><pre><span></span><code><span class="w"> </span><span class="kt">short</span><span class="w"> </span><span class="n">s</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">3467</span><span class="p">;</span>
23982410
</code></pre></div>
2399-
<h3 id="int">int</h3>
2400-
<p>Emplea 4 bytes (32 bits) de almacenamiento y es el tipo de dato entero más empleado. Necesita cuatro veces el espacio que ocupa un byte. <strong>Es el entero predeterminado usado en Java.</strong></p>
2411+
<h3 id="int">🔸 int</h3>
2412+
<ul>
2413+
<li><strong>Tamaño</strong>: 32 bits</li>
2414+
<li><strong>Rango</strong>: [-2.147.483.648, 2.147.483.647]</li>
2415+
<li><strong>Es el entero predeterminado en Java</strong>.</li>
2416+
</ul>
24012417
<div class="highlight"><pre><span></span><code><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">maxValor</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">2147483647</span><span class="p">;</span>
2402-
<span class="w"> </span><span class="c1">// after java 7 and higher</span>
2418+
<span class="w"> </span><span class="c1">// Desde Java 7 puedes usar guiones bajos</span>
24032419
<span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">maxValue</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">2_147_483_647</span><span class="p">;</span>
24042420
</code></pre></div>
2405-
<h3 id="long">long</h3>
2406-
<p>Es el tipo entero de mayor tamaño, 8 bytes (64 bits). Para definir un long, tenemos que hacerlo de la siguiente forma:</p>
2421+
<h3 id="long">🔸 long</h3>
2422+
<p>Es el tipo entero de mayor tamaño.</p>
2423+
<ul>
2424+
<li><strong>Tamaño</strong>: 64 bits</li>
2425+
<li><strong>Rango</strong>: [-9.223.372.036.854.775.808, 9.223.372.036.854.775.807]</li>
2426+
<li><strong>Se indica con una L al final</strong>.</li>
2427+
</ul>
24072428
<div class="highlight"><pre><span></span><code><span class="w"> </span><span class="kt">long</span><span class="w"> </span><span class="n">myLongNumber</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">500L</span><span class="p">;</span>
24082429
</code></pre></div>
2409-
<h3 id="float">float</h3>
2410-
<p>Tiene una parte flotante que sirve para expresar números decimales. Es de simple precisión (formato y cantidad de espacio que ocupa) porque ocupa 32 bits. No se recomienda mucho su uso.</p>
2430+
<h3 id="float">🔸 float</h3>
2431+
<p>Tiene una parte flotante que sirve para expresar números decimales. No se recomienda mucho su uso.</p>
2432+
<ul>
2433+
<li><strong>Tamaño</strong>: 32 bits</li>
2434+
<li><strong>Rango</strong>: ±1.4E-45 a ±3.4028235E38</li>
2435+
<li><strong>Decimales de precisión simple.</strong></li>
2436+
<li><strong>Se indica con una f al final.</strong></li>
2437+
</ul>
24112438
<div class="highlight"><pre><span></span><code><span class="w"> </span><span class="kt">float</span><span class="w"> </span><span class="n">f</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">4</span><span class="p">;</span>
2412-
<span class="w"> </span><span class="kt">float</span><span class="w"> </span><span class="n">f</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">4f</span><span class="p">;</span><span class="w"> </span><span class="c1">//también válida</span>
2439+
<span class="w"> </span><span class="kt">float</span><span class="w"> </span><span class="n">f</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">4f</span><span class="p">;</span>
24132440
</code></pre></div>
2414-
<h3 id="double">double</h3>
2415-
<p>Es un número de precisión doble y ocupa 64 bits. <strong>Es el flotante predeterminado en Java.</strong> Se recomienda su uso. Muchas librerías internas de Java, relacionadas con operaciones matemáticas, usan double.</p>
2416-
<div class="highlight"><pre><span></span><code><span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">d</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">5</span><span class="p">;</span>
2417-
<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">d</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">5d</span><span class="p">;</span><span class="w"> </span><span class="c1">//también válida</span>
2441+
<h3 id="double">🔸 double</h3>
2442+
<p>Se recomienda su uso. Muchas librerías internas de Java, relacionadas con operaciones matemáticas, usan double.</p>
2443+
<ul>
2444+
<li><strong>Tamaño</strong>: 64 bits</li>
2445+
<li><strong>Rango</strong>: ±4.9E-324 a ±1.7976931348623157E308</li>
2446+
<li><strong>Es el decimal predeterminado en Java</strong>.</li>
2447+
</ul>
2448+
<div class="highlight"><pre><span></span><code><span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">d</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">5.0</span><span class="p">;</span>
2449+
<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">d</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">5d</span><span class="p">;</span>
24182450
</code></pre></div>
2419-
<h3 id="char">char</h3>
2420-
<p>Se utiliza para almacenar caracteres (letras, números, signos, etc.) individuales. Ocupa 2 bytes en memoria (16 bits). Permite almacenar caracteres Unicode. Unicode es un estándar de codificación internacional que nos permite representar diferentes idiomas; y la forma en que funciona es usando una combinación de los dos bytes que un char ocupa en la memoria, que puede representar hasta 65535 diferentes tipos de caracteres. <a href="https://elcodigoascii.com.ar/">Unicode table.</a></p>
2451+
<h3 id="char">🔸 char</h3>
2452+
<p>Se utiliza para almacenar caracteres (letras, números, signos, etc.) individuales.</p>
2453+
<ul>
2454+
<li><strong>Tamaño</strong>: 16 bits</li>
2455+
<li><strong>Permite almacenar caracteres Unicode</strong> (hasta 65.535).</li>
2456+
<li><strong>Útil para representar letras, símbolos y emojis</strong>.</li>
2457+
</ul>
2458+
<p>Unicode es un estándar de codificación internacional que nos permite representar diferentes idiomas; y la forma en que funciona es usando una combinación de los dos bytes que un char ocupa en la memoria, que puede representar hasta 65535 diferentes tipos de caracteres. <a href="https://elcodigoascii.com.ar/">Unicode table.</a></p>
24212459
<div class="highlight"><pre><span></span><code><span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="n">c</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="sc">&#39;P&#39;</span><span class="p">;</span>
24222460
<span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="n">u</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="sc">&#39;\u00A2&#39;</span><span class="p">;</span><span class="c1">//print unicode character</span>
24232461
</code></pre></div>
2424-
<p>Un carácter precedido por una barra invertida () es una secuencia de escape y tiene un significado especial para el compilador. La siguiente tabla muestra las secuencias de escape de Java:</p>
2462+
<p>Un carácter precedido por una barra invertida () es una secuencia de escape y tiene un significado especial para el compilador. La siguiente tabla muestra las secuencias de escape de Java:</p>
24252463
<p><img alt="Java" src="../../img/scapedsequences.png" /></p>
2426-
<h3 id="boolean">boolean</h3>
2427-
<p>solo permite almacenar dos posibles valores que son <em>true</em> o <em>false</em>. Tiene la finalidad de facilitar el trabajo con valores "verdadero/falso" (booleanos), resultantes por regla general de evaluar expresiones.</p>
2428-
<p>Este tipo de datos representa un bit de información, pero su "tamaño" no es algo que esté definido con precisión.</p>
2464+
<h3 id="boolean">🔸 boolean</h3>
2465+
<ul>
2466+
<li><strong>Representa solo dos valores posibles</strong>: true o false.</li>
2467+
<li><strong>Tamaño no definido exactamente en Java</strong> (depende de la JVM).</li>
2468+
<li>Tiene la finalidad de facilitar el trabajo con valores "verdadero/falso" (booleanos), resultantes por regla general de evaluar expresiones.</li>
2469+
</ul>
24292470
<div class="highlight"><pre><span></span><code><span class="w"> </span><span class="kt">boolean</span><span class="w"> </span><span class="n">isMyNamePatri</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="kc">true</span><span class="p">;</span>
24302471
</code></pre></div>
24312472
<hr />
@@ -2501,10 +2542,92 @@ <h1 id="tipos-de-datos-primitivos-en-java">Tipos de datos primitivos en Java</h1
25012542
</table>
25022543
<p>* El tamaño de <code>boolean</code> no está especificado exactamente en Java; internamente depende de la JVM, pero conceptualmente ocupa 1 bit.</p>
25032544
<hr />
2504-
<h2 id="wrapper-classes-clases-contenedores">Wrapper classes (clases contenedores)</h2>
2505-
<p>Las clases contenedoras proporcionan una forma de utilizar tipos de datos primitivos como objetos. En Java, tenemos una Wrapper class para cada uno de los 8 tipos de datos primitivos. Gracias a esto, podemos realizar operaciones en un dato primitivo como por ejemplo en un int:</p>
2545+
<h2 id="wrapper-classes-en-java-clases-contenedores">📦 Wrapper classes en Java (clases contenedores)</h2>
2546+
<p>Las clases contenedoras o <strong>Wrapper classes</strong> proporcionan una forma de utilizar tipos de datos primitivos como objetos. </p>
2547+
<p>Son muy útiles para operaciones avanzadas y colecciones (ej. ArrayList).</p>
2548+
<p>En Java, tenemos una Wrapper class para cada uno de los 8 tipos de datos primitivos. Gracias a esto, podemos realizar operaciones en un dato primitivo.</p>
2549+
<h1 id="wrapper-classes-en-java">📦 Wrapper classes en Java</h1>
2550+
<table>
2551+
<thead>
2552+
<tr>
2553+
<th>Tipo primitivo</th>
2554+
<th>Wrapper class</th>
2555+
<th>Métodos útiles</th>
2556+
</tr>
2557+
</thead>
2558+
<tbody>
2559+
<tr>
2560+
<td>byte</td>
2561+
<td>Byte</td>
2562+
<td><code>Byte.parseByte("1")</code>, <code>Byte.MIN_VALUE</code> (-128), <code>Byte.MAX_VALUE</code> (127)</td>
2563+
</tr>
2564+
<tr>
2565+
<td>short</td>
2566+
<td>Short</td>
2567+
<td><code>Short.parseShort("12")</code>, <code>Short.MIN_VALUE</code> (-32,768), <code>Short.MAX_VALUE</code> (32,767)</td>
2568+
</tr>
2569+
<tr>
2570+
<td>int</td>
2571+
<td>Integer</td>
2572+
<td><code>Integer.parseInt("123")</code>, <code>Integer.MIN_VALUE</code> (-2,147,483,648), <code>Integer.MAX_VALUE</code> (2,147,483,647)</td>
2573+
</tr>
2574+
<tr>
2575+
<td>long</td>
2576+
<td>Long</td>
2577+
<td><code>Long.parseLong("9999")</code>, <code>Long.MIN_VALUE</code> (-9,223,372,036,854,775,808), <code>Long.MAX_VALUE</code> (9,223,372,036,854,775,807)</td>
2578+
</tr>
2579+
<tr>
2580+
<td>float</td>
2581+
<td>Float</td>
2582+
<td><code>Float.parseFloat("3.14")</code>, <code>Float.MIN_VALUE</code> (≈1.4E-45), <code>Float.MAX_VALUE</code> (≈3.4028235E38)</td>
2583+
</tr>
2584+
<tr>
2585+
<td>double</td>
2586+
<td>Double</td>
2587+
<td><code>Double.parseDouble("2.71")</code>, <code>Double.MIN_VALUE</code> (≈4.9E-324), <code>Double.MAX_VALUE</code> (≈1.7976931348623157E308)</td>
2588+
</tr>
2589+
<tr>
2590+
<td>boolean</td>
2591+
<td>Boolean</td>
2592+
<td><code>Boolean.parseBoolean("true")</code>, <code>Boolean.TRUE</code>, <code>Boolean.FALSE</code></td>
2593+
</tr>
2594+
<tr>
2595+
<td>char</td>
2596+
<td>Character</td>
2597+
<td><code>Character.isLetter('a')</code>, <code>Character.MIN_VALUE</code> (<code>'\u0000'</code>), <code>Character.MAX_VALUE</code> (<code>'\uffff'</code>)</td>
2598+
</tr>
2599+
</tbody>
2600+
</table>
25062601
<div class="highlight"><pre><span></span><code><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">minimoValorInt</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">Integer</span><span class="p">.</span><span class="na">MIN_VALUE</span><span class="p">;</span>
2602+
<span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">i</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">Integer</span><span class="p">.</span><span class="na">parseInt</span><span class="p">(</span><span class="s">&quot;123&quot;</span><span class="p">);</span><span class="w"> </span><span class="c1">// 123 (int)</span>
25072603
</code></pre></div>
2604+
<hr />
2605+
<p>📐 Cuándo usar <code>float</code> vs <code>double</code></p>
2606+
<table>
2607+
<thead>
2608+
<tr>
2609+
<th>Tipo</th>
2610+
<th>Precisión</th>
2611+
<th>Memoria</th>
2612+
<th>Uso recomendado</th>
2613+
</tr>
2614+
</thead>
2615+
<tbody>
2616+
<tr>
2617+
<td>float</td>
2618+
<td>~7 cifras decimales</td>
2619+
<td>32 bits</td>
2620+
<td>- Arrays grandes de números decimales (ahorro memoria) <br> - Gráficos 2D/3D, librerías que lo requieran (OpenGL, motores de juego) <br> - Dispositivos con memoria limitada</td>
2621+
</tr>
2622+
<tr>
2623+
<td>double</td>
2624+
<td>~15 cifras decimales</td>
2625+
<td>64 bits</td>
2626+
<td>- Cálculos matemáticos y científicos <br> - Finanzas y datos sensibles a la precisión <br> - Es el <strong>tipo decimal predeterminado</strong> en Java</td>
2627+
</tr>
2628+
</tbody>
2629+
</table>
2630+
<hr />
25082631

25092632

25102633

0 commit comments

Comments
 (0)