Sobrecarga


public static void main(String[] args) {
		saludo("Ana", 2);
		saludo("Juan", 3);
		saludo("Eva");
		saludo(3);
		int a = doble(7);
		System.out.println(a);
		int b = doble(doble(doble(3)));
		System.out.println(b);
		System.out.println(mayor(1,3));
		System.out.println(mayor(10,3));
	}

	// Esto es un método porque no devuelve nada
	static void saludo(String nombre, int n) {
		for (int i = 0; i < n; i++) {
			System.out.println("Hola " + nombre + " que tal");
		}
	}
	// SObre carga (overloading) de funciones. Distintos parámetros
	// Mismo nombre de función
	// Java llamará a la función que 'encaje' con los parámetros
	// Si no encaja ninguna, nos da un error
	// Podemos llamar a funciones entre sobrecargas o no
	static void saludo(String nombre) {
		saludo(nombre,1);
	}
	static void saludo(int n) {
		for (int i = 0; i < n; i++) {
			System.out.println("Hola que tal estás");
		}
	}
	// Esto sí es una función, porque devolvemos un valor
	static int doble(int numero) {
		return numero * 2;
	}

	static int mayor(int a, int b) {
		if (a > b) {
			b = a;
		}
		return b;
	}

Ejemplos funciones Java

public static void main(String[] args) {
		saludo("Ana", 2);
		saludo("Juan", 3);
		saludo("Eva", 1);
		int a = doble(7);
		System.out.println(a);
		int b = doble(doble(doble(3)));
		System.out.println(b);
		System.out.println(mayor(1,3));
		System.out.println(mayor(10,3));
	}

	// Esto es un método porque no devuelve nada
	static void saludo(String nombre, int n) {
		for (int i = 0; i < n; i++) {
			System.out.println("Hola " + nombre + " que tal");
		}
	}

	// Esto sí es una función, porque devolvemos un valor
	static int doble(int numero) {
		return numero * 2;
	}

	static int mayor(int a, int b) {
		if (a > b) {
			b = a;
		}
		return b;
	}

Ejemplos for y while

Cödigo para los ejemplos típicos de la tabla de multiplicar y la progresión geométrica:

	Scanner in = new Scanner(System.in);
		System.out.println("Introduce un número: ");
		int a = in.nextInt();
		for(int i=1;i<=10;i++) {
			System.out.println(i+" x "+a+" = "+(i*a));
		}
		
		System.out.println("Sucesión geométrica. \n Inicial: ");
		int inicial = in.nextInt();
		System.out.println("Razón geométrica: ");
		int razon = in.nextInt();
		System.out.println("Valor límite: ");
		int limite = in.nextInt();
		
		while(inicial<limite) {
			System.out.println(inicial);
			inicial*=razon;
		}

Bucles en Java

	// Bucles: while \ for
		// while en dos sabores: while() o do{}while()

		int a = 10;
		while (a < 10) {
			a++;
			System.out.println(a);
		}
		a = 10;
		do {
			System.out.println(a);
			a++;
		} while (a <= 10);

		// Pedir un número al usuario hasta que ponga un 0

		Scanner in = new Scanner(System.in);
		do {
			System.out.println("Introduce un número (0 para salir)");
			a = in.nextInt();
			System.out.println(a * 2);
		} while (a != 0);
		a = 1;
		while (a != 0) {
			System.out.println("Introduce un número (0 para salir)");
			a = in.nextInt();
			System.out.println(a * 2);
		}
		// For canónico. Os recomiendo tatuarselo en el antebrazo.
		for (int i = 0; i < 10; i++) {
			System.out.println(i);
		}

		for (int i = 0; i%7!=0; i++) {
			System.out.println(i);
		}
		
		for (int i = 0; i < 10; i += 2) {
			System.out.println(i);
		}
		int var = 0;
		for (; var < 10; var += 2) {
			System.out.println(var);
		}
		var = 0;
		for (; var < 10; ) {
			System.out.println(var);
			var += 2;
		}
		var = 0;
		for (; ; ) {
			System.out.println(var);
			var += 2;
			if (var>10) {
				break;
			}
		}

// Nada
		for (int i = 0; i%7!=0; i++) {
			System.out.println(i);
		}
		// Del 1 al 6
		// Nada
		// Solo 1
		for (int i = 1; i%7!=0; i++) {
			System.out.println(i);
		}

		// 0 1 2 3 5 6
		for (int i = 0; i < 10; i++) {
			if (i == 4) {
				// Nos salta el código siguiente hasta el final
				// Pero sigue con el bucle
				continue;
			}
			if (i == 7) {
				// Nos sale del bucle
				break;
			}
			System.out.println(i);
		}

Mini ejercicio

Crear un código que nos pida el nombre y la edad. Si es mayor o igual de 18 poner “Bienvenido “+nombre+” Puedes entrar”. En caso contrario poner: “Lo sentimos, “+nombre+” no puedes entrar.

public static void main(String[] args) {

		Scanner in = new Scanner(System.in);
		System.out.println("Introduce tu nombre:");
		String n = in.next();
		System.out.println("Introduce tu edad:");
		int a = in.nextInt();
		if (a>=18) {
			System.out.println("Bienvenido/a "+n+". Puedes entrar");
		} else {
			System.out.println("Lo sentimos, "+n+" no puedes entrar");

		}
		in.close();
	}

Pedir valores por la consola

package com.trifulcas.saludo;

import java.util.Scanner;

public class saludo {

	public static void main(String[] args) {

				Scanner in = new Scanner(System.in);
		System.out.println("Introduce tu nombre:");
		String n = in.next();
		System.out.println("Tu nombre " + n);
		int a = in.nextInt();
		System.out.println("Introduce un número:");
		in.close();
	}

}