가장 일반적인 Java 문자열 10개(번역)

3874 단어 Java 문자열
번역자: Top 10 questions of Java Strings

1. 문자열을 어떻게 비교합니까?'=='을 사용합니까 아니면 equals () 를 사용합니까?


간단히 말하면, "=="두 문자열의 인용이 같은지, equals () 는 두 문자열의 값이 같은지 테스트합니다.두 문자열이 같은 대상인지 확인하려면 equals () 를 사용하는 것이 좋습니다.
만약 네가 문자열 상주 메커니즘을 알고 있다면 더욱 좋을 것이다.

2. 보안에 민감한 정보char[]가 왜 String보다 우수합니까?


문자열은 변하지 않습니다, 이것은 문자열이 생성되면 쓰레기 수거기가 정리될 때까지 계속 유지된다는 것을 의미한다.하나의 수조에 대해 당신은 그 원소를 명확하게 수정할 수 있다.이렇게 되면 보안에 민감한 정보(예를 들어 비밀번호)는 시스템의 어느 곳에도 나타나지 않을 것이다.

3. 우리는 switch 문장에서 String을 사용할 수 있습니까?


Java7에 대한 답은 긍정적입니다.JDK7부터 우리는 String을 switch 문장의 조건으로 사용할 수 있다.JDK6 이전에는 Switch 문장의 조건으로 String을 사용할 수 없습니다.

// java 7 only!
switch (str.toLowerCase()) {
   case "a":
      value = 1;
      break;
   case "b":
      value = 2;
      break;
}

4. 문자열을 어떻게 정수로 변환합니까?


int n = Integer.parseInt("10");
 
간단하다. 사용이 너무 잦아서 간과될 때가 있다.

5. 공백 문자열이 있는 문자열을 어떻게 분해합니까?


우리는 간단하게 정규 표현식으로 분해할 수 있다.\s는 공백 문자를 나타냅니다. 예를 들어 ",\t", "\r", "입니다.

String[] strArray = aString.split("\\s+");
 

6.substring() 방법은 진정으로 무엇을 했습니까?


JDK6에서substring() 방법은 기존 문자열을 나타내는 문자열 그룹을 표시하는 창을 제공하지만, 새로운 문자열을 만들지 않습니다.새 문자 그룹으로 표시되는 새 문자열을 만들려면 다음과 같이 빈 문자열을 추가합니다.

str.substring(m, n) + ""
 
이렇게 하면 새 문자열을 나타내는 새로운 문자 그룹을 만듭니다.위의 방법은 때때로 코드를 더욱 빠르게 할 수 있다. 왜냐하면 쓰레기 수거기는 사용하지 않는 문자열을 회수하고 하위 문자열만 보존하기 때문이다.
Oracle JDK 7에서substring()은 기존 그룹을 사용하지 않고 새 문자 그룹을 만듭니다.The substring() Method in JDK 6 and JDK 7의 도표는 JDK 6와 JDK 7의substring() 간의 차이를 설명한다.

7.String vs StringBuilder vs StringBuffer


String vs StringBuilder: StringBuilder는 가변적입니다. 이것은 창설된 후에 사람이 그 값을 바꿀 수 있다는 것을 의미합니다.
StringBuilder vs StringBuffer: StringBuffer는 동기화됩니다. 이것은 라인이 안전하지만 StringBuilder보다 더 느리다는 것을 의미합니다.

8. 문자열을 어떻게 반복합니까?


Python에서는 하나의 수를 곱하여 문자열을 반복할 수 있습니다.Java에서는 Apache Commons Lang 패키지의 StringUtils 클래스의 repeat () 방법으로 문자열을 반복할 수 있습니다.

String str = "abcd";
String repeated = StringUtils.repeat(str,3);
//abcdabcdabcd
 

9. 문자열을 어떻게 날짜로 변환합니까?


String str = "Sep 17, 2013";
Date date = new SimpleDateFormat("MMMM d, yy", Locale.ENGLISH).parse(str);
System.out.println(date);
//Tue Sep 17 00:00:00 EDT 2013
 

10. 문자열에 문자가 나타나는 횟수를 어떻게 집계합니까?


Apache Commons Lang 패키지의 StringUtils 클래스를 사용합니다.

int n = StringUtils.countMatches("11112222", "1");
System.out.println(n);
 
부가문제
문자열이 대문자만 포함하는 것을 어떻게 검사합니까
번역자: Top 10 questions of Java Strings

좋은 웹페이지 즐겨찾기