JavaRush /Java Blog /Random-KO /커피 브레이크 #164. 배열을 목록으로 변환하는 세 가지 방법 Java로 Palindrome 검사기를...

커피 브레이크 #164. 배열을 목록으로 변환하는 세 가지 방법 Java로 Palindrome 검사기를 작성하는 방법

Random-KO 그룹에 게시되었습니다

배열을 목록으로 변환하는 세 가지 방법

출처: Rrtutors Java 개발자는 특히 요소 목록으로 작업할 때 배열을 목록으로 변환해야 하는 경우가 많습니다. 이 게시물에서는 Java에서 배열을 목록으로 변환하는 세 가지 방법을 배웁니다. 커피 브레이크 #164.  배열을 목록으로 변환하는 세 가지 방법  Java에서 회문을 확인하는 프로그램을 작성하는 방법 - 1

배열을 목록으로 변환하는 세 가지 방법

세 가지 방법을 사용하여 배열을 목록으로 변환할 수 있습니다.
  1. 빈 목록을 만들고 요소를 추가합니다.
  2. Arrays.asList() 메소드를 사용합니다 .
  3. new ArrayList<>(Arrays.asList(arr)) 사용 .

방법 1: 빈 목록을 만든 다음 요소 추가

이 방법은 세 가지 방법 중 가장 간단하며 대부분의 개발자는 이 방법을 매우 사소하고 당연하다고 생각합니다. 이를 사용하려면 다음 세 가지 간단한 단계를 따라야 합니다.
  • 1단계: 먼저 빈 목록을 만듭니다.
  • 2단계: 그런 다음 요소 배열을 반복합니다.
  • 3단계: 마지막으로 이러한 항목을 목록에 추가합니다.
이 세 단계가 실제로 어떻게 구현되는지 살펴보겠습니다. 아래 예에서는 빈 목록을 만들고 요소를 추가해 보겠습니다.
import java.util.ArrayList;

import java.util.List;

public class Create_List_add_arrays {

            public static void main(String[] args) {

                        String[] OurArray = new String[] { "123", "456", "789" };

        List<String> ourList = new ArrayList<>();

        for (int i=0; i<OurArray.length; i++){

            ourList.add(OurArray[i]);

        }

        System.out.println (ourList);

            }

}
결론:
[123, 456, 789]

방법 2: Arrays.asList() 메서드 사용

여기서는 배열을 목록으로 변환하기 위해 Arrays에서 제공하는 내장 메서드인 Arrays.asList(arr)를 사용합니다 . 이 메서드가 어떻게 구현되는지에 대한 예를 살펴보겠습니다.
package Using_Arrays;

import java.util.Arrays;

import java.util.List;

public class using_method {

            public static void main(String[] args) {

                        String[] OurArray = new String[] { "100", "200", "300" };

                    List<String> OurList = Arrays.asList(OurArray);

                    System.out.println(OurList);



            }

}
결론:
[100, 200, 300]
이 방법은 고정 크기 목록을 만드는 방식으로 작동합니다. 즉, 목록에 더 많은 항목을 추가할 수 없습니다.

방법 3: 새로운 ArrayList<>(Arrays.asList(arr)) 사용

여기서는 new arrayList<>(Arrays.asList(integers)); 배열을 목록으로 변환합니다. 이전 방법에 비해 이 방법의 가장 큰 장점은 생성된 배열을 통해 사용자가 목록에 더 많은 요소를 추가할 수 있다는 것입니다. 샘플 코드를 살펴보겠습니다.
import java.util.ArrayList;

import java.util.Arrays;

import java.util.List;

public class ArrayList_methods {

            public static void main(String[] args) {

                        String[] ourArray = new String[] { "100", "200", "300" };

        List<String> ourList = new ArrayList<>(Arrays.asList(ourArray));

        System.out.println("Our Array: " + ourList);

        ourList.add("400");

        System.out.println("We add a new element: " + ourList );

            }

}
결론:
배열: [100, 200, 300] 새 요소 추가: [100, 200, 300, 400]

Java로 Palindrome 검사기를 작성하는 방법

출처: DZone 이 기사에서는 Java로 회문 검사 프로그램을 작성하는 두 가지 방법을 배웁니다. 커피 브레이크 #164.  배열을 목록으로 변환하는 세 가지 방법  Java에서 회문을 확인하는 프로그램을 작성하는 방법 - 2Java 인터뷰 중에 회문을 확인하는 프로그램을 작성하라는 요청을 받을 수 있습니다. 이것은 어려운 질문 중 하나이지만 인터뷰에서는 흔히 볼 수 있는 질문입니다. 회문은 양방향으로 동일하게 읽는 숫자, 단어 또는 문자열입니다. 차례로, 그 반대는 비회문입니다.

회문은 어떻게 생겼나요?

문자나 숫자가 서로 거울상을 이루도록 배열되면 회문이 생성됩니다. 회문의 많은 예 중에는 686, 140041, 95359, 7007, 레이더, 오두막, 할아버지 등이 있습니다. 즉, 글자를 거꾸로 읽으면 서로 거울상을 이루는 것이 분명해진다. Java의 나머지 및 나누기 연산자를 사용하면 특정 숫자가 회문인지 여부를 확인하는 코드를 만들 수 있습니다.

숫자 회문 확인 프로그램 작성 단계

  1. 확인할 번호를 입력하거나 초기화합니다.
  2. 임시 변수를 만들고 그 안에 숫자를 저장합니다.
  3. 숫자를 뒤집어 보겠습니다.
  4. 임시 숫자를 역수와 비교합니다.
  5. 두 숫자가 같으면 회문입니다.

FOR 루프를 사용하는 Java 회문 프로그램

다음은 For 루프를 사용하여 회문을 찾는 사용하기 쉬운 프로그램입니다. for 루프에서는 입력 값이 0이 될 때까지 입력의 숫자를 반복적으로 확인합니다. for 루프는 루프가 반복될 때마다 reverseNum이라는 변수에 저장되는 숫자(num)의 모듈러스를 고려합니다 . 결과적으로 우리는 입력의 완전한 반대/역을 얻을 수 있습니다. 그런 다음 뒤집힌 숫자를 원래 숫자와 비교하여 회문인지 여부를 결정합니다. 다음은 테스트 중인 숫자가 회문인지 확인할 수 있는 예입니다.

프로그램 운영 알고리즘

  1. 프로그램 시작.
  2. 사용자 입력을 수락하거나 수동으로 초기화합니다(숫자).
  3. 새 변수( initialNum )를 만들고 입력을 저장합니다.
  4. num이 0이 될 때까지 num의 나머지 부분을 찾아 변수( reverseNum )에 저장합니다.
  5. initialNum이 reverseNum과 일치 하는지 확인합니다 .
  6. 두 숫자가 같으면 이것이 회문이라고 결론을 내립니다.
  7. 그렇지 않으면 회문이 아닙니다.
  8. 프로그램 종료.

코드 조각:

import java.util.*;
class Main
{
  public static void main(String[] args)
    {
        Scanner sc= new Scanner(System.in);
        System.out.print("Enter the number: ");
        int num= sc.nextInt();

        int reverseNum=0, initialNum, remainder=0;
        initialNum = num;
        for(;num!=0;num/=10)
        {
            remainder= num % 10;
            reverseNum = (reverseNum * 10) + remainder;
        }

        if (initialNum == reverseNum)
        {
            System.out.println("Yes, the given number " + initialNum + " is a palindrome.");
        }

        else
        {
           System.out.println("No, the given number " + initialNum + " is not a palindrome.");
        }
    }
}

결론 1

숫자를 입력하세요: 45354 예, 주어진 숫자 45354는 회문입니다.

결론 2

숫자를 입력하세요: 61214 아니요, 주어진 숫자 61214는 회문이 아닙니다.

While 루프를 사용하는 Java의 Palindrome 프로그램

코드의 논리를 이해했으므로 이제 Java에서 회문 프로그램을 작성하는 또 다른 방법, 즉 while 루프를 사용하는 방법을 살펴보겠습니다. while 루프에서는 입력 값이 0이 될 때까지 입력의 숫자를 반복적으로 확인합니다. while 루프는 루프가 반복될 때마다 reverseNum이라는 변수에 저장되는 숫자(num)의 모듈러스를 고려합니다. 마지막으로 반전된 숫자를 원래 숫자와 비교하여 회문인지 여부를 확인합니다. 다음은 입력이 회문 번호인지 확인할 수 있는 예입니다.

프로그램 운영 알고리즘

  1. 프로그램 시작.
  2. 사용자 입력을 수락하거나 수동으로 초기화합니다(숫자).
  3. 새 변수( initialNum )를 만들고 입력을 저장합니다.
  4. num이 0이 될 때까지 num의 나머지 부분을 찾아 변수( reverseNum )에 저장합니다.
  5. initialNum 이 reverseNum 과 같은지 확인합니다 .
  6. 둘 다 같으면 회문이라고 추론합니다.
  7. 그렇지 않으면 회문이 아닙니다.
  8. 프로그램이 종료됩니다.

코드 조각

import java.util.*;
class Main
{
    public static void main(String[] args)
    {
        Scanner sc= new Scanner(System.in);
        System.out.print("Enter the number: ");
        int num= sc.nextInt();
        int reverseNum=0, initialNum, remainder;
        initialNum = num;
        while(num!=0)
        {
            remainder= num % 10;
            reverseNum = (reverseNum * 10) + remainder;
            num = num / 10;
        }

        if (initialNum == reverseNum)
        {
            System.out.println("Yes, the given number " + initialNum + " is a palindrome.");
        }
        else
        {
           System.out.println("No, the given number " + initialNum + " is not a palindrome.");
        }
  }
}

결론 1

숫자를 입력하세요: 98989 예, 주어진 숫자 98989는 회문입니다.

결론 2

숫자를 입력하세요: 3624251 아니요, 주어진 숫자 3624251은 회문이 아닙니다.

결론

이 게시물에서는 회문이 무엇인지, 그리고 Java에서 회문을 확인하는 코드를 작성하는 방법을 배웠습니다.
코멘트
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION