배열을 목록으로 변환하는 세 가지 방법
출처: Rrtutors Java 개발자는 특히 요소 목록으로 작업할 때 배열을 목록으로 변환해야 하는 경우가 많습니다. 이 게시물에서는 Java에서 배열을 목록으로 변환하는 세 가지 방법을 배웁니다.배열을 목록으로 변환하는 세 가지 방법
세 가지 방법을 사용하여 배열을 목록으로 변환할 수 있습니다.- 빈 목록을 만들고 요소를 추가합니다.
- Arrays.asList() 메소드를 사용합니다 .
- 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로 회문 검사 프로그램을 작성하는 두 가지 방법을 배웁니다. Java 인터뷰 중에 회문을 확인하는 프로그램을 작성하라는 요청을 받을 수 있습니다. 이것은 어려운 질문 중 하나이지만 인터뷰에서는 흔히 볼 수 있는 질문입니다. 회문은 양방향으로 동일하게 읽는 숫자, 단어 또는 문자열입니다. 차례로, 그 반대는 비회문입니다.회문은 어떻게 생겼나요?
문자나 숫자가 서로 거울상을 이루도록 배열되면 회문이 생성됩니다. 회문의 많은 예 중에는 686, 140041, 95359, 7007, 레이더, 오두막, 할아버지 등이 있습니다. 즉, 글자를 거꾸로 읽으면 서로 거울상을 이루는 것이 분명해진다. Java의 나머지 및 나누기 연산자를 사용하면 특정 숫자가 회문인지 여부를 확인하는 코드를 만들 수 있습니다.숫자 회문 확인 프로그램 작성 단계
- 확인할 번호를 입력하거나 초기화합니다.
- 임시 변수를 만들고 그 안에 숫자를 저장합니다.
- 숫자를 뒤집어 보겠습니다.
- 임시 숫자를 역수와 비교합니다.
- 두 숫자가 같으면 회문입니다.
FOR 루프를 사용하는 Java 회문 프로그램
다음은 For 루프를 사용하여 회문을 찾는 사용하기 쉬운 프로그램입니다. for 루프에서는 입력 값이 0이 될 때까지 입력의 숫자를 반복적으로 확인합니다. for 루프는 루프가 반복될 때마다 reverseNum이라는 변수에 저장되는 숫자(num)의 모듈러스를 고려합니다 . 결과적으로 우리는 입력의 완전한 반대/역을 얻을 수 있습니다. 그런 다음 뒤집힌 숫자를 원래 숫자와 비교하여 회문인지 여부를 결정합니다. 다음은 테스트 중인 숫자가 회문인지 확인할 수 있는 예입니다.프로그램 운영 알고리즘
- 프로그램 시작.
- 사용자 입력을 수락하거나 수동으로 초기화합니다(숫자).
- 새 변수( initialNum )를 만들고 입력을 저장합니다.
- num이 0이 될 때까지 num의 나머지 부분을 찾아 변수( reverseNum )에 저장합니다.
- initialNum이 reverseNum과 일치 하는지 확인합니다 .
- 두 숫자가 같으면 이것이 회문이라고 결론을 내립니다.
- 그렇지 않으면 회문이 아닙니다.
- 프로그램 종료.
코드 조각:
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)의 모듈러스를 고려합니다. 마지막으로 반전된 숫자를 원래 숫자와 비교하여 회문인지 여부를 확인합니다. 다음은 입력이 회문 번호인지 확인할 수 있는 예입니다.프로그램 운영 알고리즘
- 프로그램 시작.
- 사용자 입력을 수락하거나 수동으로 초기화합니다(숫자).
- 새 변수( initialNum )를 만들고 입력을 저장합니다.
- num이 0이 될 때까지 num의 나머지 부분을 찾아 변수( reverseNum )에 저장합니다.
- initialNum 이 reverseNum 과 같은지 확인합니다 .
- 둘 다 같으면 회문이라고 추론합니다.
- 그렇지 않으면 회문이 아닙니다.
- 프로그램이 종료됩니다.
코드 조각
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은 회문이 아닙니다.
GO TO FULL VERSION