| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/05/2006 12:08:22
|
Filipe Cruz
Thread.start()
![[Avatar]](/images/avatar/e2c4c0b38669387a2a842e1fe391d233.jpg)
Membro desde: 26/03/2006 13:11:16
Mensagens: 31
Offline
|
estou utilizando o livro da Deitel 6º edição... e to com uma duvida, o q é uma String... essa pergunta é um tanto perturbadora pq era pra eu jah tah sabendo... na verdade a minha duvida eh pra que qui ela serve... ???
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/05/2006 12:20:58
|
thiago.correa
GUJ Master
![[Avatar]](/images/avatar/c37f9e1283cbd4a6edfd778fc8b1c652.jpg)
Membro desde: 26/03/2006 18:54:30
Mensagens: 1861
Offline
|
Em português
http://pt.wikipedia.org/wiki/String
Em inglês (mais completo)
http://en.wikipedia.org/wiki/String_%28computer_science%29
|
---
"Se não puder ajudar, atrapalhe, afinal de contas o importante é participar!"
Thiago
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/05/2006 12:27:39
|
christianovale
JavaChild
![[Avatar]](/images/avatar/685bfde03eb646c27ed565881917c71c.jpg)
Membro desde: 10/05/2005 14:32:08
Mensagens: 134
Localização: 000
Offline
|
Dê uma olhda nisso aqui, também:
http://www.guj.com.br/java.tutorial.artigo.103.1.guj
Falow!
|
-------------------------------
Christiano Vale
Desenvolvedor Java |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/05/2006 12:52:00
|
chicocx
JavaChild
![[Avatar]](/images/avatar/5a29503a4909fcade36b1823e7cebcf5.jpg)
Membro desde: 20/03/2005 11:57:35
Mensagens: 131
Localização: Goiânia
Offline
|
Strings em Java são objetos que contém uma cadeia de caracteres. São imutáveis, portanto uma vez criadas não podem ser alteradas. Caso ocorra uma concatenação de Strings, um novo objeto é criado, e o antigo, automaticamente removido. Para consultar caracteres pelo índice utilize o método charAt ().
This message was edited 1 time. Last update was at 10/01/2008 22:09:27
|
...a arte da via é fazer da vida uma obra de arte...
Ambient Informática
Siga-me no Twitter: @chicocx
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/05/2006 13:04:07
|
Deluxe
GUJ Ranger
![[Avatar]](/images/avatar/6d8e4836f22d0a921638c5a785a62896.jpg)
Membro desde: 26/04/2006 15:50:49
Mensagens: 793
Localização: Distrito Federal
Offline
|
pelo amor de Deus !!!
que pergunta !!!
lol
te garanto que tu nao nasceu sabendo..
aqui é um forum para java básico entao.. string é o basico do java, dexa o cara perguntar..
|
Eu tenho a humildade de aprender com as pessoas, e nao a arrogância de ensiar o que eu não sei... |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/05/2006 13:08:51
|
thingol
Moderador
Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline
|
Deluxe wrote:
te garanto que tu nao nasceu sabendo..
Quem nasce sabendo tudo é jacaré - pena que ele também não aprende nada.
|
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/05/2006 13:33:17
|
Cocota
JavaChild
![[Avatar]](/images/avatar/fdad3b5b2200b598dfde9517e5b426a8.jpg)
Membro desde: 03/04/2006 21:17:41
Mensagens: 149
Localização: Natal-RN
Offline
|
String cabe discussão d+!!!
muitas correntes filosóficas.
Dica inútil minha: Você vai entender a magnitude da invenção da classe String quando você usar char[] em C. Ou treinar bastante o core do java.
|
Ez RulEz Até de Madrugada |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/05/2006 14:02:42
|
danieldestro
Moderador
![[Avatar]](/images/avatar/a5bfc9e07964f8dddeb95fc584cd965d.png)
Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline
|
Lembra do strcpy(), strcat() ???
|
gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/05/2006 14:05:02
|
Jaison
JavaTeenager
![[Avatar]](/images/avatar/52130c418d4f02c74f74a5bc1f8020b2.png)
Membro desde: 10/04/2006 15:00:31
Mensagens: 193
Localização: Santa Catarina
Offline
|
Estamos no tópico BÁSICO e O QUE É STRING? é uma pergunta Básica
Alguém discorda disso?!!! a pergunta do cara é relevante!
abraço!
String nome = "Jaison";
|
Portal Android - Comunidade de Desenvolvedores da Plataforma Android
www.portalandroid.org
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/05/2006 14:06:32
|
nefertiti
JavaChild
![[Avatar]](/images/avatar/85ae750ad1dbdc5c2703bcfe97e77152.jpg)
Membro desde: 21/05/2004 11:52:43
Mensagens: 134
Localização: Curitiba/PR
Offline
|
chicocx wrote:pelo amor de Deus !!!
que pergunta !!!
Pelo que sei o intuito de uma lista de discussão é esclarecer dúvidas por mais que para alguns a resposta seja óbvia, mas para o rapaz não era...então ao invés de criticar passe a ele o que você sabe.
Até mais
Patty
|
"O conhecimento humano faz parte do mundo"
"Não use drogas...use Software Livre!" |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/05/2006 14:07:15
|
danieldestro
Moderador
![[Avatar]](/images/avatar/a5bfc9e07964f8dddeb95fc584cd965d.png)
Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline
|
Seu nome podia ser "Dieizoum" de uma vez... kkkkkk
abraços!
|
gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 27/06/2007 02:31:37
|
jazeel
Smalltalk
Membro desde: 27/06/2007 02:25:52
Mensagens: 1
Offline
|
O sABI PASSA SUA SABEDORIA... SEM A SABEDORIA O MUNDO Ñ VAI P/ FRENTE... POR ISSO QUE O MUNDO ESTA DO JEITO QUE ESTA... POR PESSOAS COMO "VCS", CRITICA O PROXIMO...
Em programação e em linguagens formais, uma cadeia de caracteres (também conhecida como string) é uma sequência ordenada de caracteres (símbolos) escolhidos a partir de um conjunto pré-determinado. Em programação, cada símbolo armazenado na memória é representado por um valor numérico. Uma variável declarada com tipo de dado cadeia geralmente armazena um número pré-determinado de caracteres.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/11/2008 06:54:23
|
Exclerozado
Smalltalk
![[Avatar]](/images/avatar/b45d0892a61a32c5c01f5ff140148d54.jpg)
Membro desde: 17/11/2008 06:39:20
Mensagens: 1
Offline
|
Na teoria seria impossivel, mas na pratica muito facil....
se não haver duvidas pra q serveriam os forum rssssss
fiz processamento de dados rsss !!!
mas esqueci quase tudo. possei aki pra relembrar oq é uma string.
rssss fui....... kambio desligo :wink:
|
Grupo Irmãos Metralha. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/11/2008 12:32:20
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline
|
Um caracter é um conjunto de bytes que representa um dígito, seja ele letra, número ou símbolo especial. Por exemplo, são caracteres válidos: a, e, ç, µ ou 4. Para escrever um texto, mais de um caracter é necessário. Na programação, precisamos representar essa cadeia de caracteres de alguma forma. A palavra "cadeia" em inglês é "string". Ok, esse é o conceito: string são um bando de caracteres juntos. Agora, vamos falar das implementações desse conceito. Como representar um conjunto de caracteres numa linguagem? No C, a idéia óbvia foi usar um array. A idéia básica é simples: arrays representam um conjunto de dados relacionados, que podem ser acessados por um índice. Uma cadeia de caracteres é um conjunto desses, logo, basta usar arrays para representar os caracteres. Como a cadeia pode ter um tamanho arbitrário, usaram o caracter de valor 0 para representar o fim da cadeia. Portanto, "Vinícius", em C, é um array de 9 posições, contendo: Essa abordagem era pouco prática, e muito pouco eficiente. Para se determinar o tamanho da string, era necessário varrer a string toda e descobrir onde o 0 estava. Como praticamente todas as operações de string envolvem conhecer o seu tamanho, o impacto negativo de uma função de tamanho lenta ficou evidente logo de cara. E, nesse caso, quanto maior a String, mais lenta se torna a função. A implementação também esbarrou em outro problema: internacionalização. Logo viram que um byte por caracter era insuficiente para representar todos os dígitos presentes no mundo. Novas tabelas e modos de codificação foram criados (como o Unicode). E, portanto, mais informações precisavam estar associadas a uma cadeia de caracteres para que ela se tornasse relevante. De fato, graças a isso, contar quantos caracteres uma String tem se tornou uma tarefa desafiadora, até mesmo em Java, mas esse é assunto para outra discussão. Pois bem, vieram as classes e a solução lógica foi deixar o array de lado e representar a String através de uma classe. Assim, poderiamos colocar o array com os caracteres num canto, o tamanho em outro e o tipo de codificação em outro, tudo isso encapsulado na parte interna de nossa classe. O C++ introduziu a string na sua biblioteca padrão, a STL, e é a classe std::string. Por armazenar o tamanho do string, esse é um exemplo clássico onde o código OO fica muito mais rápido do que o seu representante estruturado. O C++ permite que qualquer objeto seja tornado imutável através da palavra const. Porém, isso não é possível em java. Então, os projetistas da linguagem decidiram que, além de ser uma classe, essa classe seria imutável. Ou seja, a classe teria gets, mas não sets. Alterações seriam feitas em um outro objeto, mas não no objeto original. Por que isso? Considere o que ocorreria com esse código, caso não fosse assim: Esse código não seria seguro se a String não fosse imutável. O usuário do código poderia inserir um nome vazio simplesmente fazendo: Notem que esse erro de modelagem é comum entre programadores menos experientes. Embora a classe String seja imutável, várias outras classes (como as de collections), não são. Outras vantagens da imutabilidade é o fato dela ser inerentemente thread-safe. De fato, você pode ler mais sobre esse assunto específico nesse ótimo artigo do Goetz: http://www.ibm.com/developerworks/java/library/j-jtp02183.html No caso do java, mesmo que usemos o método concat, estamos gerando uma nova String: Nem sempre desejamos a imutabilidade. Quando vamos concatenar várias coisas para gerar um texto, a criação de novas Strings pode ter uma péssima performance (já que vários objetos intermediários serão criados). É nesses casos, que recorremos a classe StringBuilder que, nada mais é, do que uma versão mutável do String. Nesse caso, usamos a mutabilidade só onde é realmente necessária, e na minoria dos casos. Bom... ainda no C, notaram que diversas Strings são estáticas e estão presentes no código fonte (usando a declaração com aspas ""). Além disso, notaram que essas strings muitas vezes se repetiam, não eram alteradas e, portanto, poderiam economizar espaço em seu armazenamento. Por exemplo, considere as strings: banana, ana, na, nana. Todas elas poderiam ser alocadas apenas 1 vez, e essa alocação poderia ser compartilhada entre todos os processos daquele programa. Portanto, a maior parte das linguagens cria o que chamamos de pool de strings. Basicamente, o compilador faz uma varredura de todas as String "hard coded" e gera uma área separada para elas, imutável, sem repetições e que pode ser reaproveitada por vários processos. O java também faz isso. Por isso, podemos comparar com == Strings que são criadas com aspas, já que se referem ao mesmo objeto: Mas não podemos comparar assim strings vindas de outros meios: Ou criadas explicitamente com o new (nesse caso, estamos pedindo ao java que não utilize o pool). Por isso, para comparar o conteúdo de duas String, usamos o método equals. Ele sim, analisará cada caracter dentro da String, ao invés de simplesmente olhar para a posição de memória que a String ocupa (como faz o ==). Se faltou alguma coisa, ou falei alguma besteira, por favor, me corrijam ou complementem. E qualquer dúvida, é só perguntar.
This message was edited 6 times. Last update was at 17/11/2008 12:48:24
|
@ViniGodoy - Lattes
Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!
Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).
Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295 |
|
|
 |
|
|