Como converter String
para CharSequence
Java?
java
string
charsequence
Daksh Gargas
fonte
fonte
Exception groovy.lang.MissingMethodException: No signature of method: static java.util.regex.Pattern.matcher() is applicable for argument types: (java.lang.String)
Respostas:
Desde o
String
IS-ACharSequence
, você pode passar umString
onde quer que você preciseCharSequence
ou atribuir umString
aCharSequence
:Se você deseja converter um
CharSequence
para aString
, basta usar otoString
método que deve ser implementado em todas as implementações concretas deCharSequence
.Espero que ajude.
fonte
CharSequence
a aString
sem uma conversão explícita.String
a aCharSequence
.CharSequence
. Ele simplesmente atribui uma instância deString
a umaCharSequence
variável e, comoString
implementa aCharSequence
interface, o código funciona.Resposta direta:
CharSequence
é uma interface e aString
classe é implementadaCharSequence
.fonte
CharSequence é uma interface e String é uma das implementações que não são StringBuilder, StringBuffer e muitas outras.
Então, assim como você usa
InterfaceName i = new ItsImplementation()
, você pode usarCharSequence cs = new String("string")
ou simplesmenteCharSequence cs = "string";
fonte
Você pode usar
fonte
Tentando fornecer algum contexto (possível) para a pergunta do OP, publicando meu próprio problema. Estou trabalhando no Scala, mas as mensagens de erro estão recebendo todos os tipos Java de referência e a mensagem de erro é muito parecida com o compilador reclamando que CharSequence não é uma String. Confirmei no código-fonte que String implementa a interface CharSequence, mas a mensagem de erro chama a atenção para a diferença entre String e CharSequence enquanto oculta a fonte real do problema:
Consegui corrigir esse problema com a constatação de que o problema não era String / CharSequence, mas uma incompatibilidade entre java.lang.Iterable e o Iterable interno do Scala.
Meu problema específico também pode ser resolvido através das respostas em Scala: junte-se a uma iterável de strings
Em resumo, o OP e outras pessoas que se deparam com problemas semelhantes devem analisar as mensagens de erro com muita atenção e ver quais outras conversões de tipo podem estar envolvidas.
fonte