Skip to content

Commit 3445bd4

Browse files
committed
#1 - Java
1 parent 18b9da0 commit 3445bd4

File tree

1 file changed

+294
-0
lines changed

1 file changed

+294
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,294 @@
1+
package com.example.headfirstjava;
2+
3+
import org.springframework.boot.SpringApplication;
4+
5+
public class Natalinacn {
6+
7+
public static void main(String[] args) {
8+
SpringApplication.run(HeadFirstjavaApplication.class, args);
9+
10+
//#01-OPERADORES Y ESTRUCTURAS DE CONTROL
11+
12+
//Operador de Asignación (=)
13+
14+
int numero = 1;
15+
16+
System.out.println("La variable número tiene asignado el valor " + numero);
17+
18+
//Operadores Aritméticos
19+
//Suma (+)
20+
int suma = 1 + 2;
21+
System.out.println("El resultado de la suma es " + suma);
22+
23+
//Resta (-)
24+
int resta = 7 - 2;
25+
System.out.println("El resultado de la resta es " + resta);
26+
27+
//Multiplicación (*)
28+
int multi = 5*5;
29+
System.out.println("El resultado de la multiplicación es " + multi);
30+
31+
//División (/)
32+
int div = 8/4;
33+
System.out.println("El resultado de la división es " + div);
34+
35+
//Resto (%)
36+
int resto = 4%2;
37+
System.out.println("El resultado del resto es " + resto);
38+
39+
40+
/*Operadores unarios: Los operadores unarios sólo requieren un operando; realizan diversas operaciones,
41+
como incrementar/decrementar un valor en uno, negar una expresión o invertir el valor de un booleano.*/
42+
43+
//+ Operador de más unario; indica un valor positivo (los números son positivos sin este operador)
44+
int result = +1;
45+
System.out.println("El valor de result es positivo " + result);
46+
47+
//- Operador de menos unario; niega una expresión
48+
result = -result;
49+
System.out.println("El valor de resultado ahora es negativo " + result);
50+
51+
//++ Operador de incremento; incrementa un valor en 1
52+
result++;
53+
System.out.println("El valor de result ahora se incrementó en 1" + result);
54+
55+
//-- Operador de decremento; decrementa un valor en 1
56+
result--;
57+
System.out.println("El valor de result ahora se decrementó en 1" + result);
58+
59+
//! Operador de complemento lógico; invierte el valor de un booleano
60+
boolean exitoso = false;
61+
System.out.println("Exitoso es falso " + exitoso);
62+
System.out.println("Exitoso con el operador ! cambia de valor a verdadero " + !exitoso);
63+
64+
65+
//Operadores de Igualdad y Relacionales
66+
//== Igual a
67+
int num1 = 1;
68+
int num2 = 8;
69+
70+
if(num1 == num2){
71+
System.out.println("Los números son iguales");
72+
}
73+
74+
//!= No igual a
75+
if(num1 != num2 ){
76+
System.out.println("Los números son diferentes");
77+
}
78+
79+
//> Mayor que
80+
if(num1>num2){
81+
System.out.println("El número 1 " + num1 + "es mayor al número 2" + num2);
82+
}
83+
84+
//>= Mayor o igual que
85+
if(num1>=num2){
86+
System.out.println("El número 1 " + num1 + "es mayor o igual al número 2" + num2);
87+
}
88+
89+
//< Menor que
90+
if(num1<num2){
91+
System.out.println("El número 1 " + num1 + "es menor al número 2" + num2);
92+
}
93+
94+
//<= Menor o igual que
95+
if(num1<num2){
96+
System.out.println("El número 1 " + num1 + "es menor o igual al número 2" + num2);
97+
}
98+
99+
//Operadores Condicionales
100+
//&& AND condicional
101+
//|| OR condicional
102+
103+
int value1 = 5;
104+
int value2 = 2;
105+
106+
if(value1 == 5 && value2 ==2){
107+
System.out.println("El value1 es 5 y el value 2 es 2");
108+
}
109+
110+
if(value1 == 5 || value2 == 5){
111+
System.out.println("El value1 es 5 o el value2 es 5");
112+
}
113+
114+
//?: Ternario (abreviatura para una declaración if-then-else)
115+
String ternario = (value1>0) ? "El valor es mayor a 0" : "El valor es menor a 0";
116+
System.out.println(ternario);
117+
118+
//Operador de Comparación de Tipo
119+
120+
//instanceof Compara un objeto con un tipo especificado
121+
Dog dog1 = new Dog();
122+
123+
System.out.println("El objeto dog1 es instancia de Dog? " + (dog1 instanceof Dog));
124+
125+
//Operadores Bitwise y de Desplazamiento de Bits
126+
//
127+
//~ Complemento bitwise unario
128+
//<< Desplazamiento a la izquierda con signo
129+
//>> Desplazamiento a la derecha con signo
130+
//>>> Desplazamiento a la derecha sin signo
131+
//& AND bitwise
132+
//^ OR exclusivo bitwise
133+
//| OR inclusivo bitwise
134+
135+
int g = 5; // 5 en binario es 00000101
136+
137+
int bitwiseComplement = ~g; // bitwiseComplement es -6 (en binario 11111010)
138+
int leftShift = g << 2; // leftShift es 20 (00010100)
139+
int rightShift = g >> 1; // rightShift es 2 (00000010)
140+
int unsignedRightShift = g >>> 1; // unsignedRightShift es 2 (00000010)
141+
142+
int h = 3; // 3 en binario es 00000011
143+
int bitwiseAnd = g & h; // bitwiseAnd es 1 (00000001)
144+
int bitwiseOr = g | h; // bitwiseOr es 7 (00000111)
145+
int bitwiseXor = g ^ h; // bitwiseXor es 6 (00000110)
146+
147+
148+
149+
//ESTRUCTURAS DE CONTROL
150+
//1. Estructuras Condicionales
151+
//If
152+
int edad = 18;
153+
if(edad > 18){
154+
System.out.println("Eres un adulto");
155+
}
156+
157+
//if-else
158+
if(edad > 18){
159+
System.out.println("Eres un adulto");
160+
}else{
161+
System.out.println("No eres un adulto");
162+
}
163+
164+
//if-else if-else
165+
166+
int puntaje = 40;
167+
168+
if(puntaje>=85){
169+
System.out.println("Eres muy inteligente");
170+
} else if (puntaje >= 60) {
171+
System.out.println("Vas bien encaminado, sigue estudiando");
172+
} else if (puntaje >= 40) {
173+
System.out.println("No seas vago, estudia más");
174+
}else{
175+
System.out.println("No vas a aprender nada si sigues sin estudiar");
176+
}
177+
178+
//switch
179+
int dia = 2;
180+
181+
switch (dia){
182+
case 1:
183+
System.out.println("El día es Lunes");
184+
break;
185+
case 2:
186+
System.out.println("El día es Martes");
187+
break;
188+
case 3:
189+
System.out.println("El día es Miércoles");
190+
break;
191+
case 4:
192+
System.out.println("El día es Jueves");
193+
break;
194+
default:
195+
System.out.println("Es otro día");
196+
break;
197+
}
198+
199+
//2. Bucles
200+
//for
201+
for (int i = 0; i < 5; i++) {
202+
System.out.println("Iteracion: " + i);
203+
}
204+
205+
//for-each
206+
207+
int[] arrayNumeros = {1, 5, 8, 9, 22};
208+
209+
for (int num : arrayNumeros) {
210+
System.out.println("Número " + num);
211+
}
212+
213+
//while
214+
int count = 0;
215+
while (count < 5){
216+
System.out.println("Count en el while " + count);
217+
count++;
218+
}
219+
220+
//do-while
221+
int countDoWhile = 0;
222+
do {
223+
System.out.println("Count en el do-while: " + countDoWhile);
224+
countDoWhile++;
225+
}while(countDoWhile < 5);
226+
227+
//3. Estructuras de Control de Salto
228+
//break
229+
for (int i = 0; i < 10; i++) {
230+
if (i == 5) {
231+
break; // Salir del bucle cuando i es 5
232+
}
233+
System.out.println("Con el break: i: " + i);
234+
}
235+
236+
237+
//continue
238+
for (int i = 0; i < 10; i++) {
239+
if (i % 2 == 0) {
240+
continue; // Saltar la iteración actual si i es par
241+
}
242+
System.out.println("Con el continue: i: " + i);
243+
}
244+
245+
//yield: El yield se usa dentro de un bloque switch para devolver un valor después de realizar algún cálculo o lógica adicional.
246+
//En este caso, se usa para devolver el número de días laborales restantes en la semana después de calcularlo.
247+
248+
Day diaYield = Day.MONDAY;
249+
System.out.println("Días laborales restantes: " + calculateRemainingWorkDays(diaYield));
250+
251+
252+
//return
253+
System.out.println("Sum con return: " + add(5, 3));
254+
255+
//* DIFICULTAD EXTRA (opcional):
256+
// * Crea un programa que imprima por consola todos los números comprendidos
257+
// * entre 10 y 55 (incluidos), pares, y que no son ni el 16 ni múltiplos de 3.
258+
259+
for (int i = 10; i < 56; i++) {
260+
if (i % 2 == 0 && i != 16 && i % 3 != 0) {
261+
System.out.println(i);
262+
}
263+
}
264+
265+
266+
267+
268+
269+
}
270+
//Método para return
271+
public static int add(int a, int b) {
272+
return a + b; // Terminar el método y devolver un valor
273+
274+
}
275+
276+
//Método para yield
277+
// Método que utiliza switch con yield
278+
public static int calculateRemainingWorkDays(Day d) {
279+
return switch (d) {
280+
case SATURDAY, SUNDAY -> 0;
281+
default -> {
282+
int remainingWorkDays = 5 - d.ordinal();
283+
yield remainingWorkDays;
284+
}
285+
};
286+
}
287+
288+
// Enumeración de días de la semana
289+
enum Day {
290+
MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY
291+
}
292+
293+
294+
}

0 commit comments

Comments
 (0)