예를 들어 Java에서 배열 및 문자열 유형을 사용하는 방법에 대해 설명합니다.
수조는 같은 데이터 유형을 가진 한 조의 데이터의 집합이다. 자바는 주로 수조를 지원한다. 1차원 수조의 모든 기본 단원은 기본 데이터 유형의 데이터이고 2차원 수조는 모든 기본 단원이 1차원 수조의 1차원 수조이다. 이런 식으로 n차원 수조의 모든 기본 단원은 n-1을 수조로 하는 n-1차원 수조이다.다음은 1차원 그룹을 예로 들어 자바 그룹의 사용법을 설명한다.
1. 배열 선언
배열은 다음과 같은 두 가지 형식을 나타냅니다(네모난 괄호의 위치는 다릅니다).
int arr[];
int[] arr2;
2. 배열 초기화그룹 초기화에도 다음과 같은 두 가지 형식이 있습니다. (new를 사용하거나 new를 사용하지 않음).
int arr[] = new int[]{1, 3, 5, 7, 9};
int[] arr2 = {2, 4, 6, 8, 10};
3, 반복 수조반복 배열은 다음과 같이 for/foreach를 사용할 수 있습니다.
public static void main(String[] args) {
int arr[] = new int[]{1, 3, 5, 7 ,9};
int[] arr2 = {2, 4, 6, 8, 10};
for (int i = 0; i < arr.length; ++i) {
System.out.print(arr[i] + "\t"); // 1 3 5 7 9
}
for (int x: arr2) {
System.out.print(x + "\t"); // 2 4 6 8 10
}
}
4、Arrays.fill () 채우기 그룹Arrays 클래스의 정적 방법을 사용하려면 import 패키지java가 필요합니다.util.Arrays, 많은 재부팅 방법을 정의했습니다.
void fill (int[] a, int val) 모두 채우기
void fill(int[] a, int from Index, int to Index, int val) 지정된 인덱스를 채우는 요소
int[] arr3 = new int[5];
for (int x: arr3) {
System.out.print(x + "\t"); // 0 0 0 0 0 0
}
System.out.println();
Arrays.fill(arr3, 10);
for (int x: arr3) {
System.out.print(x + "\t"); // 10 10 10 10 10 10
}
System.out.println();
Arrays.fill(arr3, 1, 3, 8);
for (int x: arr3) {
System.out.print(x + "\t"); // 10 8 8 10 10
}
System.out.println();
5、Arrays.sort () 배열 정렬voidsort(int[]a) 전체 정렬
void sort(int[] a, int from Index, int to Index) 지정한 인덱스 요소 정렬
int[] arr4 = {3, 7, 2, 1, 9};
Arrays.sort(arr4);
for (int x: arr4) {
System.out.print(x + "\t"); // 1 2 3 7 9
}
System.out.println();
int[] arr5 = {3, 7, 2, 1, 9};
Arrays.sort(arr5, 1, 3);
for (int x: arr5) {
System.out.print(x + "\t"); // 3 2 7 1 9
}
System.out.println();
6、Arrays.copyOf() 복제 배열int[]copyOf(int[]original, int newLength) 복제 그룹, 새 그룹 길이 지정
int[]copyOfRange(int[]original, int from, int to) 복사 그룹, 복사된 원수 그룹의 인덱스 지정
int[] arr6 = {1, 2, 3, 4, 5};
int[] arr7 = Arrays.copyOf(arr6, 5); // 1 2 3 4 5
int[] arr8 = Arrays.copyOfRange(arr6, 1, 3); // 2 3
for (int x: arr7) {
System.out.print(x + "\t");
}
System.out.println();
for (int x: arr8) {
System.out.print(x + "\t");
}
System.out.println();
Java 문자열Java 문자열 유형은 String 클래스로 문자열을 조작하는 방법에 대해 설명합니다.
1. 문자열 연결
문자열 연결에는 다음과 같은 예에서 "+"기호가 사용됩니다.
String s = new String("Hello");
String s2 = new String("World");
System.out.println(s + " " + s2); // Hello World
2. 문자열 길이 가져오기문자열 길이를 가져오려면 다음과 같이 str.length () 를 사용합니다.
String s3 = new String("Hello Java");
System.out.println(s3.length()); // 10
3. 지정된 문자열의 인덱스 가져오기지정한 문자열을 가져오는 인덱스는str.indexOf(substr),str.lastIndexOf(substr)를 사용합니다. 다음과 같습니다.
String s4 = new String("how are you");
System.out.println(s4.indexOf("o")); // 1
System.out.println(s4.lastIndexOf("o")); // 9
4. 지정된 인덱스 문자 가져오기지정한 인덱스를 가져오는 문자는 다음과 같이 str.charAt(index)를 사용합니다.
String s5 = new String("Hello Java");
System.out.println(s5.charAt(4)); // o
5. 문자열의 공백 제거문자열의 공백을 제거하는 데는 여러 가지 방법이 있습니다. str.trim () 또는str.replaceAll (regex,replacement) 을 사용하거나 StringTokenizer 클래스를 빌려 문자열을 공백으로 구분할 수 있습니다. 사용하기 전에 import 패키지java가 필요합니다.util.StringTokenizer:
String s6 = new String(" Hello Java ");
String s7 = s6.trim(); // 、
String s8 = s6.replaceAll(" ", ""); //
StringTokenizer st = new StringTokenizer(s6, " "); //
StringBuffer sb = new StringBuffer();
while (st.hasMoreTokens()) {
sb.append(st.nextToken());
}
System.out.println("\"" + s6 + "\"" + "length = " + s6.length()); // " Hello Java "length = 14
System.out.println("\"" + s7 + "\"" + "length = " + s7.length()); // "Hello Java"length = 10
System.out.println("\"" + s8 + "\"" + "length = " + s8.length()); // "HelloJava"length = 9
System.out.println("\"" + sb.toString() + "\"" + "length = " + sb.toString().length()); // "HelloJava"length = 9
6. 문자열 바꾸기문자열을 바꾸면 모든 하위 문자열을 바꿀 수도 있고 첫 번째 하위 문자열을 바꿀 수도 있습니다.
String sr = new String("abc abd bcd");
String sr2 = sr.replace("ab", "xx"); //
String sr3 = sr.replaceFirst("ab", "xx"); //
System.out.println(sr2); // "xxc xxd bcd"
System.out.println(sr3); // "xxc adb bcd"
7. 문자열 판정 등문자열 판정 등은 문자열 내용 판정 등, 대소문자 무시 여부, 메모리 주소 판정 등, 문자열 시작 또는 끝 판단 등 여러 가지 상황이 있다. 다음과 같다.
String se = new String("Summer is so Hot");
String se1 = new String("Summer is so Hot");
String se2 = new String("summer is so hot");
String se3 = se;
System.out.println(se == se1); // false
System.out.println(se == se3); // true
System.out.println(se.equals(se1)); // true
System.out.println(se.equals(se2)); // false
System.out.println(se.equalsIgnoreCase(se2)); // true
System.out.println(se2.startsWith("summer")); // true
System.out.println(se2.endsWith("cold")); // false
8, 문자열 대소문자 변환문자열 대소문자 변환은 다음과 같습니다.
String sc = new String("hello WORLD");
String scl = sc.toLowerCase(); // hello world
String scu = sc.toUpperCase(); // HELLO WORLD
System.out.println(scl + " " + scu);
9. 문자열 구분문자열은 다음과 같이 구분됩니다.
String ss = new String("abc,def,g,h");
String[] ss2 = ss.split(","); //
for (String x: ss2) {
System.out.print(x + "\t"); // abc def g h
}
10. 문자열 포맷문자열 포맷은 날짜 포맷, 시간 포맷, 진법 변환 등 여러 가지 형식이 있는데 Date 클래스의 사용은 import 패키지java가 필요합니다.util.Date, 다음 예:
Date d = new Date();
System.out.println(d); // Wed Jul 22 16:00:36 CST 2015
System.out.println(String.format("%tm", d)); // 07
System.out.println(String.format("%tH", d)); // 16 24
System.out.println(String.format("%x", 256)); // 100
11. String, StringBuffer, StringBuilder 클래스 비교String: 문자열 상수, 변하지 않는 대상, 변수 내용이 바뀔 때 실제적으로 새로운 String 대상을 생성합니다. 변수 내용을 여러 번, 빈번하게 바뀔 때 시스템 성능에 영향을 미칠 수 있습니다. 특히 이로 인해 GC가 작업을 시작할 때 프로그램 속도가 매우 느려집니다.
StringBuffer: 문자열 변수, 스레드가 안전하고 변수 내용이 바뀔 때 같은 대상을 조작하는데 효율이 String 유형보다 높다.
StringBuilder: 문자열 변수로 StringBuffer와 호환되지만 안전하지 않습니다. 단일 라인이라면 StringBuilder를 우선적으로 사용합니다. 이것은 StringBuffer보다 빠릅니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
JPA + QueryDSL 계층형 댓글, 대댓글 구현(2)이번엔 전편에 이어서 계층형 댓글, 대댓글을 다시 리팩토링해볼 예정이다. 이전 게시글에서는 계층형 댓글, 대댓글을 구현은 되었지만 N+1 문제가 있었다. 이번에는 그 N+1 문제를 해결해 볼 것이다. 위의 로직은 이...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.