// clase inicial
public static void main(String[] args){}

//imprimir en consola
System.out,println("");

//varaible global

var pepe = "Pepe Argento"

//variables numericas (enteros)

// byte (limt 3) short (limit 5) long (limit 20l) 

int speed = 10; //limit 10 dijitos

//variables numericas (decimales)

float numer = 12.5f;   //4 byts

double numerd = 15.56161;  //8 byts

//variable texto

char pepe = 'x'

//variable boleana

boolean dead = false;

// variables con letras
String name = "bruno";

// varaibles constantes
int POSITION = 45

// actualizar variables
int salary =  1000;
salary = salary +200;

String name "Bruno";
name = name + "Agazzi"

//operadores de asignación

a += b   ==  a = a + b
a -= b   ==  a = a - b
a *= b   ==  a = a * b 
a /= b   ==  a = a / b
a %= b   ==  a = a % b

// operador incremento decremento

i++    == i = i + 1
i--    == i = i - 1  
//Operaciones matematicas

Math.PI // 3.141592653589793
Math.E // 2.718281828459045

Math.ceil(2.1) // 3.0 (redondear hacia arriba)
Math.floar(2.1) // 2.0 (redondear hacia abajo)

Math.pow(2, 3) // 8.0 (número elevado a una potencia)
Math.sqrt(3) // 1.73... (raíz cuadrada)

Math.max(2, 3) // 3.0 (el número más grande)

// Área de un círculo (PI * r^2):
Math.PI * Math.pow(r, 2)

// Área de una esfera (4 * PI * r^2):
4 * Math.PI * Math.pow(r, 2)

// Volumen de una esfera ( (4/3) * PI * r^3):
(4/3) * Math.PI * Math.pow(r, 3)
// Cast Estimación
double monthlyDogs = dogsQuantity / 12.0;
// monthlyDogs: 2.5 (pero no es posible, ¡no rescatamos medio perrito!)

int estimatedMonthlyDogs = (int) monthlyDogs;
// estimatedMonthlyDogs: 2

// Recuerda que el casteo no redondea, solo quita los decimales:
Math.sqrt(3) // 1.7320508075688772
(int) Math.sqrt(3) // 1
//Cast Exactitud
int a = 30;
int b = 12;

a / b // 2
(double) a / b // 2.5

// casteo

char n = '1'
short nS = (short) n;

// Setencia if 

if (condición) {
  // instrucciones
}
else {
  // sino esto;
}

// Switch
 
// java 11
 var pepe = 12
switch (pepe ) {
  case 2:
    System.out.println("no sos Pepe");
    break;
  case 4:
    System.out.println("No sos Pepe");
    break;
  case 12:
    System.out.println("Sos Pepe");
    break;
  default:
    System.out.println("No sos nadie");
    break;
}

// java 12
switch (variable) {
  case 1 -> 
  case 20 -> 
  default -> 
}
//Operadores
Igualdad    ==
Desigualdad !=
Menor que:   <
Mayor que:   >
Menor o igual que: <=
Mayor o igual que: >=
&&: AND //evaluar si dos o más condiciones son verdaderas
||: OR //evaluar si al menos una de las condiciones es verdadera
!: NOT //evaluar que la condición NO sea verdadera
// FUNCIONES

public int funcionComer(argumentos) //void; //sin valor de regreso
{

 return valor de regreso;

}

// llamar funcion

funcionComer();
// Bucles

//Do While
do {
  // instrucciones
} while (condición);
-------------------------------------------------------------------------
//while

while(condicion)
{
//intrucciones
}
-------------------------------------------------------------------------
// Scanner 
import java.util.Scanner;

int response = 0;

Scanner sc = new Scanner(System.in);
response = Integer.valueOf(sc.nextLine());

/*La clase Scanner le permite a los usuarios contestar algunas preguntas 
para que nuestro programa actúe de una forma u otra. Para usarla solo debemos
 importar la clase Scanner de las APIs de desarrollo de Java
*/
-------------------------------------------------------------------------
// Operador Ternario:
isTurnOnLight = (isTurnOnLight) ? false : true;
-------------------------------------------------------------------------
//For

for (inicialización; condición; incremento o decremento;) {
  // Instrucciones
}

-------------------------------------------------------------------------
 
// ARRAYS

// 1. Definir el nombre de la variable y el tipo de datos
//  que va a contener, cualquiera de las siguientes dos
// opciones es válida:
TipoDato[] nombreVariable;
TipoDato nombreVariable[];

// 2. Definir el tamaño del array, la cantidad de elementos
// que podemos guardar en el array:
TipoDato[] nombreVariable = new TipoDato[capacidad];

// Array de dos dimensiones:
TipoDato[][] cities = new String[númeroFilas][númeroColumnas];

// Guardar valor en alguna posición del  Arrays

nombreVariable[indice] = valor;

// For Anidados

// Array de una sola dimensión:
for (int i = 0; i <= 3; i++) {
  System.out.println(i);
}
// El resultado será: 0, 1, 2, 3

// Array de dos dimensiones:
for (int row = 0; row < cities.length; row++) {
  for (int col = 0; col < cities[row].length; col++) {
    System.out.println(cities[row][col]);
  }
}
 // Ciclo Foreach
for (TipoDato elemento : coleccion) {
  // Instrucciones
}

// generar archivo jar

1 file/projectsStructure/Artifacts/+/jar/from modules with dependencies

2 build/build artifacts/build

// correr archivo terminal

java -jar archivo.jar