Programação - Java Tudo o que é escrito através do teclado é texto, ou seja um conjunto ordenado de caracteres, Strings. O modo como queremos interpretar o que é lido faz com que esse texto seja convertido para o tipo de valores que pretendemos. Isto significa que ao escrever 12345 no teclado estou a escrever texto, exactamente do mesmo modo como escrevo oiuiuyre. Se no meu programa quero que esse texto seja interpretado como texto, utilizo o método teclado.next() e consigo ler a String “12345” ou a String “oiuiuyre”. Se no meu programa quero que esse texto seja interpretado como número do tipo int, utilizo o método teclado.nextInt() e consigo ler a String “12345” que é convertida por esse método para o inteiro 12345. Dá erro se tentar ler a String “oiuiuyre” com esse método. Se quiser que o texto escrito 12345 no teclado seja lido como um número do tipo byte, utilizo o método teclado.nextByte(), mas neste caso daria um erro porque um byte só tem capacidade para um número entre -128 e +127. No programa também podemos converter texto num número do tipo int utilizando o método Integer.parseInt (). Os dois troços de programa são equivalentes, quando se escreve por exemplo 12345 no teclado. Scanner tcl = new Scanner(System.in); Scanner tcl = new Scanner(System.in); int numero = tcl.nextInt(); String palavra = tcl.next(); int numero = Integer.parseInt(palavra); Métodos de conversão de texto (String) nos tipos de dados primitivos (excepto char). String palavra = "12"; int inteiro = Integer.parseInt(palavra); long grande = Long.parseLong(palavra); short pequeno = Short.parseShort(palavra); byte umByte = Byte.parseByte(palavra); float comVirgula = Float. parseFloat(palavra); double grandeVirgula = Double. parseDouble(palavra); String palavra = "true"; boolean simNao = Boolean. parseBoolean(palavra); Vitor Vaz da Silva – ISEL PG-B-1 Programação - Java Os seguintes troços de código são equivalentes à execução dos respectivos métodos: // Ler uma palavra do teclado e identificar o terceiro carácter caso exista Scanner scn = new Scanner(System.in); String palavra = scn.next(); // ler a palavra if(palavra.length() > 3){ char letra = palavra.charAt(2); // colocar em letra o terceiro carácter. if( Character.isDigit(letra) ) System.out.print("É um dígito"); if( Character.isLetter(letra) ) System.out.print("É letra"); if(letra >= '0' && letra <= '9') System.out.print("É um dígito"); if(letra >= 'a' && letra <= 'z' || letra >= 'A' && letra <= 'Z') System.out.print("É letra"); if( Character.isLetterOrDigit(letra) ) System.out.print("É letra ou dígito"); if(letra >= '0' && letra <= '9' || letra >= 'a' && letra <= 'z' || letra >= 'A' && letra <= 'Z') System.out.print("É letra ou dígito"); if( Character.isUpperCase(letra) ) System.out.print("É letra maiúscula"); if(letra >= 'A' && letra <= 'Z') System.out.print("É letra maiúscula"); if( Character.isLowerCase(letra) ) System.out.print("É letra minúscula"); if(letra >= 'a' && letra <= 'z') System.out.print("É letra minúscula"); } else System.out.print("Esse texto tem menos de três caracteres"); Vitor Vaz da Silva – ISEL PG-B-2