초보 자 자바 배열 기초 지식 이해

5417 단어 자바기초배열
1.배열 의 정의
  • 선성 명 후 사용
  • 데이터 형식[]배열 이름=new 데이터 형식[길이];String[] arr3 = new String[5];
    데이터 형식 배열 이름[]=new 데이터 형식[길이];String arr[] = new String[5];
  • 직접 초기 화
  • String[] arrs = {"1","2","3"};
  • 성명 및 초기 화
  • 
    String[] sarr = new String[]{"a","b"};
    2.array 옮 겨 다 니 기
  • 옮 겨 다 니 기
  • 배열 을 흐름 으로 봉 하여 조작 합 니 다.모든 작업 은 목록 과 같 습 니 다.
    
    public static void main(String[] args) {
          String[] arrs = {"1","2","3"};
          Arrays.stream(arrs).forEach(System.out::println);
      }
  • 보통 옮 겨 다 니 기
  • 보통 세 가지 방법 이 있 습 니 다.첫 번 째 방법 을 사용 하 는 것 을 권장 합 니 다.
    색인 을 사용 하려 면 세 번 째 종 류 를 사용 할 수 있 습 니 다.
    거꾸로 하려 면 세 번 째 를 사용 하 세 요.
    图片
    3.List 와 array 사이 의 전환
    list 와 array 사이 에 큰 관계 가 있 습 니 다.list 의 실현 형식 은 링크 와 배열 이 있 습 니 다.저희 가 개발 할 때 이들 을 전환 시 켜 야 합 니 다.
    1.배열 변환 list
  • 순환 을 사용 하여 list 로 전환
  • 도구 의 도움 을 받 는 방법
  • 코드 표시:
    
       public static void main(String[] args) {
           String[]  arrs = {"1","2","3"};
           //     
           List<String> list1 = new ArrayList<>();
           for (String arr : arrs) {
               list1.add(arr);
          }
           //        
           List<String> list2 = Arrays.asList(arrs);
           //        
           List<String> list3 = new ArrayList<>();
           Collections.addAll(list2,arrs);
      }
    2.list 회전 배열
  • list 내장 방법 toArray
  • 직접 순환
  • 코드 전시
    
       public static void main(String[] args) {
           List<String> list = Arrays.asList("1","2");
           String[] arr1 = new String[list.size()];
           //       
           for (int i = 0; i < list.size(); i++) {
               arr1[i] = list.get(i);
          }
           //   list   
           String[] arr2 = (String[]) list.toArray();
      }
    3.Arrays 도구 클래스
  • toString()
  • 배열 을 인쇄 하 는 방법 입 니 다.이 방법 을 사용 하지 않 으 면 메모리 주 소 를 인쇄 합 니 다.
    图片
  • stream()
  • 배열 을 스 트림 작업 으로 바 꾸 면 구체 적 으로 보 여주 지 않 습 니 다.
  • sort()
  • 배열 을 정렬 합 니 다.이 정렬 은 배열 내부 정렬 입 니 다.값 을 되 돌려 주지 않 으 면 원래 배열 이 바 뀔 수 있 습 니 다.
  • setAll
  • 배열 내 요 소 를 조작 하려 면 function 을 제공 해 야 합 니 다.서로 다른 데이터 형식 을 가지 고 있 습 니 다.
    
    String[] arrs = {"1","2","3"};
          Arrays.setAll(arrs, e->e+"0");
          for (String arr : arrs) {
              System.out.println(arr);
          }
  • binarySearch
  • 이름 을 보면 모두 이것 이 2 점 검색 이라는 것 을 알 고 있 습 니 다.구체 적 인 알고리즘 도 간단 합 니 다.만약 에 할 줄 모 르 면 보충 할 수 있 습 니 다.2 점 검색 을 알 면 알 아야 합 니 다.이 방법 을 호출 하기 전에 배열 이 질서 가 있 도록 해 야 합 니 다!
  • copyOf
  • 이름 도 직 설 적 이 고 배열 을 복사 합 니 다.확장 은 길이 제한 을 추가 하거나 데 이 터 를 채 우 는 설정 입 니 다.
  • equals
  • 설명 이 필요 없 을 것 같 아 요.
  • deepEquals
  • 두 배열 의 깊이 가 같 는 지,즉 배열 이 몇 층 으로 묶 여 있 는 지 판단 하 는 것 이다.
    
    public static void main(String[] args) {
          String[] arrs = {"1","2","3"};
          String[][] arr2 = {{"1"},{"2"},{"3"}};
          boolean b = Arrays.deepEquals(arr2, arrs);
          System.out.println(b);
      }
  • fill
  • 영 어 를 알 면 기본적으로 다 알 고 있 습 니 다.배열 을 어떻게 채 우 는 지,물론 당신 도 스스로 순환 작업 을 할 수 있 습 니 다.
  • hashCode
  • 계산 배열 의 hash code
  • parallelPrefix
  • 이 재 미 있 는 것 은 병렬 적 으로 배열 안의 요 소 를 누적 하 는 것 입 니 다.예 를 들 어 알 수 있 습 니 다.
    
    public static void main(String[] args) {
           String[]  sarr = new String[]{"a","b","c"};
           Arrays.parallelPrefix(sarr, (sum,e1)->e1 + sum);
           System.out.println(Arrays.toString(sarr));
      }
    실행 결 과 를 보십시오.
    图片
    4.닥 칠 수 있 는 문제
    1.색인 경 계 를 넘 는 문제,배열 의 아래 표 시 된 색인 은 0 에서 시작 되 며,마지막 색인 은 length-1 입 니 다.경 계 를 넘 지 않도록 주의 하 십시오.
    2.아래 방식 으로 만 든 목록 은 추가 가 지원 되 지 않 습 니 다.
    Arrays 의 ArrayList 가 reove()와 add()방법 을 실현 하지 않 았 기 때문에 이상 을 던 졌 습 니 다.그래서 Arrays.asList 가 되 돌려 주 는 List 는 가 변 길이 가 없 는 목록 입 니 다.이 목록 은 원래 List 의 많은 특성 을 가지 지 않 기 때문에 Arrays.asList 방법 을 사용 하 는 것 을 조심 하 십시오.
    
    String[] arr = {"1", "2", "3"};
           List list = Arrays.asList(arr);
           arr[1] = "4";
           try {
               list.add("5");
          } catch (Exception ex) {
               ex.printStackTrace();
          }
    3.작은 기술 로 배열 을 원 으로 감아 서 옮 겨 다 닌 다.
    배열 길 이 를 남 겨 두 면 됩 니 다.
    
       public static void main(String[] args) {
           String[] arr = {"a", "b", "c"};
           int i = 0;
           int j = 0;
           int length = arr.length;
           while (j++ <10){
               System.out.println(arr[i%length]);
               i++;
          }
      }
    여러 번 배열 을 옮 겨 다 니 는 것 을 볼 수 있 습 니 다.
    图片
    총결산
    이 글 은 여기까지 입 니 다.당신 에 게 도움 을 줄 수 있 기 를 바 랍 니 다.또한 당신 이 우리 의 더 많은 내용 에 관심 을 가 져 주 기 를 바 랍 니 다!

    좋은 웹페이지 즐겨찾기