Em Java , string é basicamente um objeto que representa uma sequência de valores char. Um variedade de caracteres funciona da mesma forma que a string Java. Por exemplo:
char[] ch={'j','a','v','a','t','p','o','i','n','t'}; String s=new String(ch);
é o mesmo que:
String s='javatpoint';
Cadeia Java class fornece vários métodos para realizar operações em strings, como compare(), concat(), equals(), split(), length(), replace(), compareTo(), intern(), substring() etc.
A classe java.lang.String implementa Serializável , Comparável e Sequência de caracteres interfaces .
Interface CharSequence
A interface CharSequence é usada para representar a sequência de caracteres. Corda, StringBuffer e StringBuilder classes o implementam. Isso significa que podemos criar strings em Java usando essas três classes.
A String Java é imutável, o que significa que não pode ser alterada. Sempre que alteramos qualquer string, uma nova instância é criada. Para strings mutáveis, você pode usar as classes StringBuffer e StringBuilder.
Discutiremos string imutável mais tarde. Vamos primeiro entender o que é String em Java e como criar o objeto String.
O que é String em Java?
Geralmente, String é uma sequência de caracteres. Mas em Java, string é um objeto que representa uma sequência de caracteres. A classe java.lang.String é usada para criar um objeto string.
Como criar um objeto string?
Existem duas maneiras de criar o objeto String:
- Por string literal
- Por nova palavra-chave
1) Literal de cadeia de caracteres
O literal Java String é criado usando aspas duplas. Por exemplo:
String s='welcome';
Cada vez que você cria uma string literal, a JVM verifica primeiro o 'conjunto de constantes de string'. Se a cadeia de caracteres já existir no pool, será retornada uma referência à instância em pool. Se a cadeia de caracteres não existir no pool, uma nova instância de cadeia de caracteres será criada e colocada no pool. Por exemplo:
String s1='Welcome'; String s2='Welcome';//It doesn't create a new instance
No exemplo acima, apenas um objeto será criado. Em primeiro lugar, a JVM não encontrará nenhum objeto string com o valor 'Bem-vindo' no pool de constantes de string, por isso criará um novo objeto. Após isso ele encontrará a string com o valor 'Welcome' no pool, não criará um novo objeto mas retornará a referência para a mesma instância.
Nota: Os objetos String são armazenados em uma área de memória especial conhecida como 'conjunto de constantes de string'.
Por que Java usa o conceito de String literal?
Para tornar o Java mais eficiente em termos de memória (porque nenhum novo objeto será criado se já existir no conjunto de constantes de string).
2) Por nova palavra-chave
String s=new String('Welcome');//creates two objects and one reference variable
Nesse caso, JVM criará um novo objeto de string na memória heap normal (não-pool), e o literal 'Bem-vindo' será colocado no pool de constantes de string. A variável s se referirá ao objeto em um heap (não-pool).
carteiro
Exemplo de string Java
StringExample.java
public class StringExample{ public static void main(String args[]){ String s1='java';//creating string by Java string literal char ch[]={'s','t','r','i','n','g','s'}; String s2=new String(ch);//converting char array to string String s3=new String('example');//creating Java string by new keyword System.out.println(s1); System.out.println(s2); System.out.println(s3); }}Teste agora
Saída:
java strings example
O código acima converte um Caracteres matriz em um Corda objeto. E exibe os objetos String s1, s2 , e s3 no console usando imprimirln() método.
Métodos da classe Java String
A classe java.lang.String fornece muitos métodos úteis para executar operações na sequência de valores char.
Não. | Método | Descrição |
---|---|---|
1 | char charAt(int índice) | Ele retorna o valor char para o índice específico |
2 | comprimento interno() | Ele retorna o comprimento da string |
3 | formato de string estático (formato de string, objeto... args) | Ele retorna uma string formatada. |
4 | formato String estático (Locale l, formato String, Objeto... args) | Ele retorna uma string formatada com determinada localidade. |
5 | Substring de string(int BeginIndex) | Ele retorna substring para determinado índice inicial. |
6 | String substring(int inícioIndex, int endIndex) | Ele retorna substring para determinado índice inicial e índice final. |
7 | booleano contém (CharSequence s) | Ele retorna verdadeiro ou falso após corresponder à sequência do valor char. |
8 | junção de string estática (delimitador CharSequence, elementos CharSequence...) | Ele retorna uma string unida. |
9 | junção de string estática (delimitador CharSequence, elementos iteráveis) | Ele retorna uma string unida. |
10 | booleano é igual (objeto outro) | Ele verifica a igualdade da string com o objeto fornecido. |
onze | booleano isEmpty() | Ele verifica se a string está vazia. |
12 | String concat(String str) | Ele concatena a string especificada. |
13 | Substituição de string (char antigo, char novo) | Ele substitui todas as ocorrências do valor char especificado. |
14 | Substituição de string (CharSequence antigo, CharSequence novo) | Ele substitui todas as ocorrências do CharSequence especificado. |
quinze | String estática igual aIgnoreCase (String outro) | Ele compara outra string. Não verifica o caso. |
16 | String[] divisão(String regex) | Ele retorna uma string dividida correspondente a regex. |
17 | String[] split(String regex, limite interno) | Ele retorna uma string dividida correspondente a regex e limite. |
18 | Estagiário de string() | Ele retorna uma string internada. |
19 | int indexOf(int ch) | Ele retorna o índice de valor char especificado. |
vinte | int indexOf(int ch, int fromIndex) | Ele retorna o índice de valor char especificado começando com o índice fornecido. |
vinte e um | int indexOf(String substring) | Ele retorna o índice de substring especificado. |
22 | int indexOf(String substring, int fromIndex) | Ele retorna o índice de substring especificado começando com o índice fornecido. |
23 | String toLowerCase() | Ele retorna uma string em letras minúsculas. |
24 | String toLowerCase(Local l) | Ele retorna uma string em letras minúsculas usando a localidade especificada. |
25 | String toUpperCase() | Ele retorna uma string em maiúsculas. |
26 | String toUpperCase(Local l) | Ele retorna uma string em maiúsculas usando a localidade especificada. |
27 | Corte de string() | Ele remove os espaços iniciais e finais desta string. |
28 | String estática valorOf (valor int) | Ele converte determinado tipo em string. É um método sobrecarregado. |
Você sabe?
- Por que os objetos String são imutáveis?
- Como criar uma classe imutável?
- O que é pool de constantes de string?
- Qual código é escrito pelo compilador se você concatenar qualquer string por + (operador de concatenação de strings)?
- Qual é a diferença entre as classes StringBuffer e StringBuilder?
O que aprenderemos em Tratamento de Strings?
- Conceito de corda
- String imutável
- Comparação de cordas
- Concatenação de Strings
- Conceito de Substring
- Métodos da classe String e seu uso
- Classe StringBuffer
- Classe StringBuilder
- Criando classe imutável
- Método toString()
- Classe StringTokenizer