O tipo primitivo char do Java é uma representação de 16 bits de um único caractere.
Vários chars podem compor uma string, como "word", ou os chars podem ser processados de forma independente.
Um literal char é cercado por aspas simples (por exemplo, 'A').
char lowerA = 'a';
char upperB = 'B';
chars de uma String
O método String.toCharArray retorna os caracteres de uma String como um array.
Como mencionado em arrays, você pode usar um laço for para iterar sobre o array.
String text = "Hello";
char[] asArray = text.toCharArray();
for (char ch: asArray) {
System.out.println(ch);
}
// Outputs:
// H
// e
// l
// l
// o
Existem muitos métodos integrados da biblioteca para inspecionar e manipular chars.
Eles podem ser encontrados como métodos estáticos da classe java.lang.Character.
Aqui estão alguns exemplos:
Character.isWhitespace(' '); // true
Character.isWhitespace('#'); // false
Character.isLetter('a'); // true
Character.isLetter('3'); // false
Character.isDigit('6'); // true
Character.isDigit('?'); // false
char a uma String
O operador + pode ser usado para adicionar um char a uma String.
'a' + " banana" // => "a banana"
"banana " + 'a' // => "banana a"
Cuidado para não usar o + para juntar dois chars e formar uma String!
Somar dois chars dessa forma resulta em um int, não em uma String!
Por exemplo:
'b' + 'c';
// => 197 (not the String "bc")
Isso acontece porque o Java promove o char para um int (veja 4.2 Primitive Types and Values da Java Language Specification).
No entanto, quando há muitos caracteres para adicionar, pode ser mais eficiente usar um StringBuilder:
StringBuilder builder = new StringBuilder();
builder.append('a');
builder.append('b');
builder.append('c');
String builtString = builder.toString();
// => abc
Neste exercício, você vai implementar um conjunto parcial de rotinas utilitárias para ajudar quem desenvolve a limpar nomes SqueakyClean.
Nas 4 tarefas, você vai montar aos poucos o método clean.
Um nome SqueakyClean válido é composto de zero ou mais letras e sublinhados.
Em todos os casos, é garantido que a string de entrada não será nula. Repare que o método clean deve tratar uma string vazia como válida.
Implemente o método (static) SqueakyClean.clean() para substituir os espaços por sublinhados. Isso também vale para espaços no início e no fim.
SqueakyClean.clean("my Id");
// => "my___Id"
Modifique o método (static) SqueakyClean.clean() para converter kebab-case em camelCase.
SqueakyClean.clean("a-bc");
// => "aBc"
Modifique o método (static) SqueakyClean.clean() para converter leetspeak em texto normal.
Para simplificar, vamos substituir apenas 4, 3, 0, 1 e 7 por a, e, o, l e t, respectivamente.
SqueakyClean.clean("H3ll0 W0rld");
// => "Hello_World"
SqueakyClean.clean("4 73s7");
// => "a_test"
Modifique o método (static) SqueakyClean.clean() para remover os caracteres que não são letras.
SqueakyClean.clean("a$#.b");
// => "ab"
Crie sua conta no Exercism para aprender e dominar Java com 26 conceitos158 exercícios e mentoria humana de verdade, tudo de graça.