문자열을 CharSequence로 변환하는 방법?
변환 방법String
로CharSequence
자바에서?
이후String
IS-A CharSequence
, 당신은 통과할 수 있다.String
필요한 곳이면 어디든CharSequence
또는 할당String
완전히CharSequence
:
CharSequence cs = "string";
String s = cs.toString();
foo(s); // prints "string"
public void foo(CharSequence cs) {
System.out.println(cs);
}
a를 변환하려면CharSequence
완전히String
, 그냥 사용하라.toString
의 모든 구체적인 구현에 의해 구현되어야 하는 방법CharSequence
.
정답을 말:
String s = "Hello World!";
// String => CharSequence conversion:
CharSequence cs = s; // String is already a CharSequence
CharSequence
인터페이스 및 클래스가 구현하는 기능CharSequence
.
CharSequence는 인터페이스로 StringBuilder, StringBuffer 및 기타 여러 가지 구현 중 하나이다.
그래서, 당신이 사용하는 것처럼.InterfaceName i = new ItsImplementation()
, 사용할 수 있다.CharSequence cs = new String("string")
또는 간단히CharSequence cs = "string";
사용할 수 있다
CharSequence[] cs = String[] {"String to CharSequence"};
좋은 질문이야!제네릭을 사용하는 API를 호출하여 다른 유형의 하위 유형으로 결과를 할당하거나 반환하려는 경우 문제가 발생할 수 있다.Java 8의 혁신 지원:
List<String> input = new LinkedList<>(Arrays.asList("a", "b", "c"));
List<CharSequence> result;
// result = input; // <-- Type mismatch: cannot convert from List<String> to List<CharSequence>
result = input.stream().collect(Collectors.toList());
System.out.println(result);
나만의 트러블을 게시함으로써 OP의 질문에 대해 어떤 (가능) 컨텍스트를 제공하려고 시도한다.나는 스칼라에서 일하고 있지만, 모든 참조 자바 타입을 받고 있는 에러 메세지, 그리고 에러 메세지는 샤르시퀀스가 스트링이 아니라고 불평하는 컴파일러와 많이 닮았다.나는 소스 코드에서 String이 CharSequence 인터페이스를 구현한다는 것을 확인했지만, 오류 메시지는 문제의 실제 근원을 숨긴 채 String과 CharSequence의 차이에 주의를 끈다.
scala> cols
res8: Iterable[String] = List(Item, a, b)
scala> val header = String.join(",", cols)
<console>:13: error: overloaded method value join with alternatives:
(x$1: CharSequence,x$2: java.lang.Iterable[_ <: CharSequence])String <and>
(x$1: CharSequence,x$2: CharSequence*)String
cannot be applied to (String, Iterable[String])
val header = String.join(",", cols)
나는 문제가 스트링/차르시퀀스가 아니라 오히려 자바.랑 사이의 불일치라는 깨달음으로 이 문제를 해결할 수 있었다.Itable과 Scala는 Itable이 내장되어 있다.
scala> val header = String.join(",", coll: _*)
header: String = Item,a,b
나의 특별한 문제는 스칼라에서 답을 통해서도 해결될 수 있다: 수많은 현에 가입하라.
요약하자면, OP와 유사한 문제에 직면한 다른 사람들은 오류 메시지를 매우 면밀하게 구문 분석하여 어떤 다른 유형의 변환이 관련될 수 있는지 확인해야 한다.
참조URL: https://stackoverflow.com/questions/1391970/how-to-convert-a-string-to-charsequence
'Programing' 카테고리의 다른 글
Vue.js - 이 간단한 예에서 중첩된 구성 요소를 렌더링하는 방법? (0) | 2022.04.16 |
---|---|
XSD 파일에 대해 XML 파일을 검증하는 방법 (0) | 2022.04.16 |
입력 필드에 최대 및 최소 제한을 설정하는 중? (0) | 2022.04.16 |
Vue 2 라이프사이클 - Destroy 전에 중지하는 방법? (0) | 2022.04.16 |
Java int to String - Integrity.toString(i) 대 새 정수(i.toString() (0) | 2022.04.16 |