Gabarito disponível
Observe a execução do programa Java abaixo. De acordo com os dados, qual o resultado correto dessa execução?
public class TesteString
{
public static void main(String[] args)
{
String s1 = "string";
System.out.printf("%s", s1);
System.out.printf(", %d", s1.length());
System.out.printf(", %c", s1.charAt(2));
}
}
public class TesteString
{
public static void main(String[] args)
{
String s1 = "string";
System.out.printf("%s", s1);
System.out.printf(", %d", s1.length());
System.out.printf(", %c", s1.charAt(2));
}
}
Resolução comentada
A saída é: string, 6, r.
O printf imprime "string", depois ", 6", pois length() de "string" é 6. Por fim imprime ", r", pois charAt(2), com índice começando em 0, é o 'r' (s=0, t=1, r=2).
Análise das alternativas
A) Corta a string. B e D) Usam tamanho 5, que está errado. C) Usa o caractere 't', que é o índice 1.
Referência: Java: String.length(), charAt() e printf.
Resolução comentada do VaiConcursos.