[java] —— 데이터 구조 기반

머리말

펑 형제 님의 말을 들어보세요. 하루에 한 시간 씩 신인 튜토리얼을 진행하세요 ~
길은 막혀 있고 길어요 ~

Java 데이터 구조 개요

자바 스택 클래스

Stack<Integer> st = new Stack<Integer>();
st.push(new Integer(1)); // 把项压入堆栈顶部。
Integer a = st.peek(); // 查看堆栈顶部的对象,但不从堆栈中移除它。
int place = st.search(1); // 从栈顶往下搜索,返回对象在堆栈中的位置,以 1 为基数。
Integer a = st.pop(); // 移除堆栈顶部的对象,并作为此函数的值返回该对象。
boolean is_empty = st.empty(); // 测试堆栈是否为空。

Java Hashtable 类

지도를 사용할 때 봐

컬렉션 프레임

여기에 사진 설명 삽입

수집 순회

ArrayList 탐색

//定义
List<String> list = new ArrayList<String>();
list.add("he")
list.add("she")
//1. 强for:
for(String str:list){
    
    
	System.out.println(str);
}
//2. 集合转换成数组!
String[] strArray = new String[list.size()];
list.toArray(strArray);
for(int i=0;i<strArray.length;i++){
    
    
	System.out.println(strArray[i]);
}
//3. 迭代器
Iterator<String> it = list.iterator();
while(it.hasNext()){
    
    
	System.out.println(it.next());
}

ArrayList

소개:

ArrayList는 AbstractList를 상속하고 List 인터페이스를 구현합니다.

가이드 패키지 :

import java.util.ArrayList

초기화 :

ArrayList<引用类型> name = new ArrayList<>();

요소 추가 :

ArrayList<String> list = new ArrayList<String>();
list.add("haha,nihaochun");

액세스 요소 :

list.get(0); // index从0开始

요소 수정 :

list.set(0, "haha.nizhendehaochun"); // set(int index, E element) 

요소 삭제 :

list.remove(0);

크기 계산 :

int sz = list.size();

되풀이:

for(int i = 0;i<list.size();i++){
    
    
	SOUT(list.get(i));
}

정렬 1 :

import java.util.Collections;
Collections.sort(list);

정렬 2 (배열 정렬) :

int[] intArray = list.stream().mapToInt(Integer::valueOf).toArray();
Arrays.sort(intArray)

List <Integer> : int 배열로 변환 :

list.stream().mapToInt(Integer::valueOf).toArray();

기타 일반적인 방법 (사용시 추가하십시오) :
https://www.runoob.com/java/java-arraylist.html

HashMap

소개:

HashMap은 AbstractMap에서 상속되며 Map, Cloneable 및 java.io.Serializable 인터페이스를 구현합니다.

가이드 패키지 :

import java.util.HashMap;

초기화 :

HashMap<Integer, String> Sites = new HashMap<Integer, String>();

요소 추가 :

Sites.put(1, "Google");

액세스 요소 1 :

String s = Sites.get(3);

액세스 요소 2 :

String s = Sites.getOrDefault(4, "Noexits!!")

요소 삭제 :

Sites.remove(4);

빈:

Sites.clear();

크기 계산 :

Sites.size()

되풀이:

//键
for(Integer i : Sites.keySet()){
    
    
	...
}
//值
for(String s : Sites.values()){
    
    
	...
}
//键-值
for(Integer i : Sites.keySet()){
    
    
	String s = Sites.get(i);
}

기타 일반적인 방법 :
https://www.runoob.com/java/java-hashmap.html

LinkedList

소개 :
여기에 사진 설명 삽입
가이드 패키지 :

import java.util.LinkedList;

초기화 :

LinkedList<E> list = new LinkedList<E>();

ArrayList는 그것을 가지고 있고 그것을 갖게 될 것입니다. 다음은 독특하고 더 효율적인 방법 중 일부입니다 :

머리에 요소 추가

list.addFirst(...);

끝에 요소 추가

list.addLast(...);

머리에서 요소 제거

list.removeFirst();

꼬리의 요소 제거

list.removeLast();

헤드 요소 가져 오기

list.getFirst();

꼬리 요소 가져 오기

list.getLast();

기타 일반적인 방법 :
https://www.runoob.com/java/java-linkedlist.html

StringBuffer

소개:

그러나 애플리케이션에 스레드 안전성이 필요한 경우 StringBuffer 클래스를 사용해야합니다.

초기화 :

StringBuffer sb = new StringBuffer("lalala");

증가하다

sb.append("wwww");

이 시퀀스에있는 데이터의 문자열 표현을 반환합니다.

String ss = sb.toString();

범위에서 문자열 삭제

sb.delete(index, index+1);

단일 문자 삭제

sb.deleteCharAt(index); // 得到和上面一样的效果

길이

int length = sb.length();

소개:

문자열은 Java 프로그래밍에서 널리 사용되며, 문자열은 Java의 객체이며 Java는 문자열을 만들고 조작 할 수있는 String 클래스를 제공합니다.

초기화

String s = "xxxx";

단일 문자에 액세스

char c = s.charAt(index);

길이

int length = s.length();

기타 관련

기본 유형 참조 유형

ArrayList의 초기화는 다음과 같습니다.

ArrayList<E> list = new ArrayList<>();

E : objectName의 데이터 유형을 설정하는 데 사용되는 일반 데이터 유형이며 참조 데이터 유형 만 될 수 있습니다.

또한 HashMap에 저장된 유형도 참조 유형
이므로 다음은 일반적인 기본 유형과 참조 유형에 대해 설명합니다.
여기에 사진 설명 삽입

추천

출처blog.csdn.net/jokerxsy/article/details/114438484