Java ""
에서 String 과 같이 빈 문자를 나타내고 싶습니다 .
그렇게 char ch = an empty character;
사실은 공백을 남기지 않고 문자를 바꾸고 싶습니다.
나는 이것이 의미하는 바를 이해하는 것으로 충분할 것이라고 생각합니다.
답변
할당 할 수 있습니다 '\u0000'
(또는 0). 이를 위해 Character.MIN_VALUE
.
Character ch = Character.MIN_VALUE;
답변
char
정확히 하나의 문자를 의미합니다. 이 유형에는 0 개의 문자를 할당 할 수 없습니다.
이는 String.replace(char, char)
길이가 다른 문자열을 반환하는 char 값이 없음을 의미합니다 .
답변
Character는 Object에서 파생 된 클래스이므로 null을 “인스턴스”로 할당 할 수 있습니다.
Character myChar = null;
문제 해결됨 😉
답변
빈 문자열은 char[]
요소가없는 래퍼입니다 . 비어있을 수 있습니다 char[]
. 그러나 당신은 “빈”을 가질 수 없습니다 char
. 다른 프리미티브와 마찬가지로 a char
는 값을 가져야합니다.
“공백을 남기지 않고 문자를 교체”하고 싶다고합니다.
를 처리하는 경우 해당 요소가 제거 char[]
된 새 항목 char[]
을 만듭니다 .
를 처리하는 경우 문자가 제거 String
된 새 String
(String is immutable)를 만듭니다 .
다음은 문자를 제거하는 방법에 대한 몇 가지 샘플입니다.
public static void main(String[] args) throws Exception {
String s = "abcdefg";
int index = s.indexOf('d');
// delete a char from a char[]
char[] array = s.toCharArray();
char[] tmp = new char[array.length-1];
System.arraycopy(array, 0, tmp, 0, index);
System.arraycopy(array, index+1, tmp, index, tmp.length-index);
System.err.println(new String(tmp));
// delete a char from a String using replace
String s1 = s.replace("d", "");
System.err.println(s1);
// delete a char from a String using StringBuilder
StringBuilder sb = new StringBuilder(s);
sb.deleteCharAt(index);
s1 = sb.toString();
System.err.println(s1);
}
답변
chars
정수 (ASCII- 코드)로 표현할 수 있듯이 다음과 같이 간단히 작성할 수 있습니다.
char c = 0;
ASCII 코드의 0은 null
입니다.
답변
빈 공간을 남기지 않고 문자열의 문자를 바꾸려면 StringBuilder를 사용하여이를 수행 할 수 있습니다. 문자열은 Java에서 변경 불가능한 객체이므로 수정할 수 없습니다.
String str = "Hello";
StringBuilder sb = new StringBuilder(str);
sb.deleteCharAt(1); // to replace e character
답변
당신은 할 수 없습니다. “”포함하지 않는 문자열에 대한 리터럴 에는 문자. “빈 문자”(당신이 의미하는 바가 무엇이든)는 포함하지 않습니다.