domingo, 26 de mayo de 2024

Tipos de datos en JAVA, datos Primarios

En Java, los datos primarios (o tipos de datos primitivos) son los tipos de datos básicos que no se derivan de otros tipos y se utilizan para definir variables de tipo simple. Los tipos de datos primitivos en Java son ocho, y cada uno tiene un propósito específico, un rango de valores y un tamaño en memoria definido. Aquí están los ocho tipos de datos primitivos en Java:


Tipos de Datos Primitivos en Java

byte


Descripción: Tipo de datos enteros con signo.

Tamaño: 8 bits.

Rango de valores: -128 a 127.

Ejemplo:

byte a = 100;
byte b = -50;

short


Descripción: Tipo de datos enteros con signo de tamaño pequeño.

Tamaño: 16 bits.

Rango de valores: -32,768 a 32,767.

Ejemplo:

short a = 1000;
short b = -2000;

int


Descripción: Tipo de datos enteros estándar con signo.

Tamaño: 32 bits.

Rango de valores: -2^31 a 2^31-1 (aproximadamente -2.14 mil millones a 2.14 mil millones).

Ejemplo:

int a = 100000;
int b = -200000;

long


Descripción: Tipo de datos enteros grandes con signo.

Tamaño: 64 bits.

Rango de valores: -2^63 a 2^63-1 (aproximadamente -9.22 quintillones a 9.22 quintillones).

Ejemplo:

long a = 10000000000L;
long b = -20000000000L;

float


Descripción: Tipo de datos de punto flotante de precisión simple.

Tamaño: 32 bits.

Rango de valores: Aproximadamente ±1.4E-45 a ±3.4E38, con 7 dígitos de precisión.

Ejemplo:

float a = 3.14f;
float b = -3.14f;

double


Descripción: Tipo de datos de punto flotante de precisión doble.

Tamaño: 64 bits.

Rango de valores: Aproximadamente ±4.9E-324 a ±1.8E308, con 15 dígitos de precisión.

Ejemplo:

double a = 3.141592653589793;
double b = -3.141592653589793;

boolean


Descripción: Tipo de datos lógicos.

Tamaño: No está claramente definido en términos de bits, pero usualmente representado como un byte.

Valores posibles: true o false.

Ejemplo:

boolean isTrue = true;
boolean isFalse = false;

char


Descripción: Tipo de datos de carácter, que representa un solo carácter Unicode.

Tamaño: 16 bits.

Rango de valores: '\u0000' (o 0) a '\uffff' (o 65,535).

Ejemplo:

char a = 'A';
char b = 'B';

Ejemplo de Uso de Todos los Tipos Primitivos en un Programa

public class PrimitivesExample {
    public static void main(String[] args) {
        // Tipos enteros
        byte byteVar = 100;
        short shortVar = 1000;
        int intVar = 100000;
        long longVar = 10000000000L;

        // Tipos de punto flotante
        float floatVar = 3.14f;
        double doubleVar = 3.141592653589793;

        // Tipo booleano
        boolean booleanVar = true;

        // Tipo char
        char charVar = 'A';

        // Mostrar valores
        System.out.println("byteVar: " + byteVar);
        System.out.println("shortVar: " + shortVar);
        System.out.println("intVar: " + intVar);
        System.out.println("longVar: " + longVar);
        System.out.println("floatVar: " + floatVar);
        System.out.println("doubleVar: " + doubleVar);
        System.out.println("booleanVar: " + booleanVar);
        System.out.println("charVar: " + charVar);
    }
}

Estos son los tipos de datos primitivos en Java, cada uno con su propio tamaño, rango de valores y propósito específico. Utilizarlos adecuadamente según el contexto del programa es esencial para escribir código eficiente y eficaz.

jueves, 18 de abril de 2024

Como ganar dinero desde casa

Esta vez nos iremos un poco diferente a lo que siempre escribimos en este blog. ya que este tema es algo que me viene aconteciendo desde hace unos días y esto es.

Como ganar dinero desde casa.

Nada es fácil en esta vida, principalmente la parte de tener un ingreso sin salir de casa, lo mas cordial seria un trabajo parcial el cual te permita pasar mas tiempo en casa que fuera de la misma, sin embargo encontrar este tipo de trabajo es bastante raro ya sin mencionar lo difícil que puede llegar a ser, sin embargo existen varias herramientas que nos pueden ayudar a facilitar este punto.

Trabajo remoto:

Para los que somos desarrolladores esto puede ser bastante fácil ya que solo basta con empezar a aplicar en las empresas que ofertan trabajo remoto (Home Office) aun que para ello es necesario mucha preparación principalmente si apenas estas comenzando, debes dominar diversos tipos de lenguajes de desarrollo sin mencionar las diversas metodologías que debes de poder controlar y lo disciplinado que debes de ser para lograr un buen trabajo remoto, lo mas común que puedes encontrar de home office es el desarrollo de paginas web. para ello se requiere principalmente de un control en lo que se refiere al análisis de los requerimientos del cliente así como de un buen diseño y arquitectura de sistemas. Las herramientas que veo en este tipo de trabajo son (css, less, javascript, nodeJS, php, java, python, sql, mysql, SQLserver, PLSQL).

YouTube:

Los creadores de contenido en YouTube siempre se la pasan en casa o bien haciendo lo que decíamos que de niños haríamos. (viajar), sin embargo es un tema mucho mas tedioso de lo que se ve, si eres nuevo en esto te comento, deberás de tener conocimiento por muy básico que parezca de edición de video ya que de esto depende mucho que un video sea bueno o no, aun que también existen diversas herramientas que te ayudan a mejorar en tu contenido tales como canva, filmora, adobe PremierePro, iMovie, lightworks entre otros.

Blogger: 

Así es, este medio también te permite el ingreso de dinero sin salir de casa, con la variante de que este es un poco mas lento que los anteriores. ya que se requiere de un flujo constante de usuarios leyendo tu contenido por lo que se requiere que estés actualizándolo lo mas pronto posible.

por ultimo mas no el menos importante. cabe mencionar que para cumplir con este medio se requiere de mucha dedicación y constancia pues el tener un negocio desde casa requiere de mucho esfuerzo, no por algo existe ese dicho bien mencionado, el que quiera tienda que la atienda. 

Aplicaciones:

Por otro lado existen las aplicaciones de encuestas por paga

Una de ellas es ATTAPOLL la cual la encuentran en dispositivos móviles al igual que en pagina web para la computadora les dejo aquí https://encuestaspagadas.mx/? el enlace.

 

Bueno por el momento son los que recuerdo y se me hacen bastante prácticos, si conoces algún otro. te pido me lo hagas saber en un comentario. 


Nos leemos en la próxima.

martes, 27 de junio de 2023

Manipulación de JSON en JavaScript: Transposición de Datos

¡Hola a todos! Estamos de vuelta con un nuevo artículo sobre JavaScript. Esta vez, exploraremos un tema fundamental pero a menudo repetitivo: cómo trabajar con JSON. Vamos a sumergirnos directamente en el código, donde mostraremos cómo transponer valores de filas a columnas en un arreglo JSON.


¿Qué es la Transposición de Datos?

La transposición de datos implica cambiar la orientación de los datos, es decir, convertir filas en columnas y viceversa. En este artículo, te mostraré cómo hacerlo usando JavaScript.


La Función transpuesta

La función transpuesta se encarga de transponer los valores de un objeto JSON. A continuación, se explica cómo funciona esta función paso a paso:


Código de la Función

/**
 * Función transpuesta: Transpone valores de filas a columnas en un arreglo JSON.
 * @param {Object} obj - El objeto JSON que contiene los datos a transponer.
 * @returns {Array} - El nuevo arreglo con los valores transpuestos.
 */
function transpuesta(obj) {
    var rtn = [];
    var key = {};
    var x = 0;

    // Función de comparación de objetos
    var c = function(a, b) {
        return JSON.stringify(a) === JSON.stringify(b);
    };

    // Recorre el arreglo o JSON que recibe
    $.each(obj.arr, function(i, v) {
        var nObj = {};
        var keys = Object.keys(v);
        
        // Crea un objeto sin las llaves y valores a transponer
        for (var j = 0; j < keys.length; j++) {
            if (keys[j] !== obj.field.structure.value && keys[j] !== obj.value) {
                nObj[keys[j]] = v[keys[j]];
            }
        }

        var rn = -1;

        // Evalúa si la llave ya tiene un objeto asociado
        if (Object.keys(key).length == 0) {
            key['a_' + x] = { k: nObj, r: rtn.length };
            x++;
        } else {
            var existe = false;
            for (var y = 0; y < x; y++) {
                if (c(key['a_' + y].k, nObj)) {
                    existe = true;
                    rn = key['a_' + y].r;
                }
            }

            if (!existe) {
                key['a_' + x] = { k: nObj, r: rtn.length };
                x++;
            }
        }

        var tmpObj = {};
        $.extend(tmpObj, nObj);

        var k = obj.field.structure;
        var prp = k.prepend + (v[k.value] + "").replace(k.rp[0] || '', k.rp[1] || '') + k.append;

        if (rn == -1) {
            tmpObj[prp] = v[obj.value];
            rtn.push(tmpObj);
        } else {
            rtn[rn][prp] = v[obj.value];
        }
    });

    return rtn;
}

Ejemplo de Uso

Vamos a ver un ejemplo práctico de cómo usar esta función.


JSON de Entrada

var jsn = [
    {folio: 4401685, fecha: '20/07/2022', orden: 352673, identificador: 44156245, pieza: 312, equivalencia: 'XY-A1'},
    {folio: 4401685, fecha: '20/07/2022', orden: 352673, identificador: 44156245, pieza: 504, equivalencia: 'XY-A3'},
    {folio: 4401685, fecha: '20/07/2022', orden: 352673, identificador: 44156245, pieza: 312, equivalencia: 'XY-A4'},
    {folio: 4401685, fecha: '20/07/2022', orden: 352673, identificador: 44156245, pieza: 1272, equivalencia: 'XY-A6'},
    {folio: 4401685, fecha: '20/07/2022', orden: 352673, identificador: 44156245, pieza: 960, equivalencia: 'XY-A7'},
    {folio: 4401685, fecha: '20/07/2022', orden: 352673, identificador: 44156245, pieza: 624, equivalencia: 'XY-A8'}
];

Invocación de la Función

var jsonRtn = transpuesta({
    arr: jsn,
    field: {
        structure: {
            prepend: 'E_',
            value: 'equivalencia',
            rp: ['-', '_'],
            append: '_PZ'
        }
    },
    value: 'pieza'
});

Resultado

La función transpuesta transformará los datos de la siguiente manera:

console.log(jsonRtn);
/*
[
    {
        folio: 4401685,
        fecha: '20/07/2022',
        orden: 352673,
        identificador: 44156245,
        E_XY_A1_PZ: 312,
        E_XY_A3_PZ: 504,
        E_XY_A4_PZ: 312,
        E_XY_A6_PZ: 1272,
        E_XY_A7_PZ: 960,
        E_XY_A8_PZ: 624
    }
]
*/

Conclusión

En este artículo, hemos aprendido a transponer valores en un arreglo JSON usando JavaScript. Esta técnica es útil para reorganizar datos y hacerlos más manejables para diferentes propósitos.


Si este artículo te ha sido útil, por favor, deja tu comentario y comparte tu experiencia. Gracias por leernos y hasta la próxima.