JavaRush /จาวาบล็อก /Random-TH /คอฟฟี่เบรค #164. สามวิธีในการแปลงอาร์เรย์เป็นรายการ วิธีเ...

คอฟฟี่เบรค #164. สามวิธีในการแปลงอาร์เรย์เป็นรายการ วิธีเขียนตัวตรวจสอบ Palindrome ใน Java

เผยแพร่ในกลุ่ม

สามวิธีในการแปลงอาร์เรย์เป็นรายการ

ที่มา: Rrtutors นักพัฒนา Java มักจะต้องแปลงอาร์เรย์เป็นรายการ โดยเฉพาะอย่างยิ่งเมื่อทำงานกับรายการองค์ประกอบ ในโพสต์นี้ คุณจะได้เรียนรู้สามวิธีในการแปลงอาร์เรย์เป็นรายการใน Java คอฟฟี่เบรค #164.  สามวิธีในการแปลงอาร์เรย์เป็นรายการ  วิธีเขียนโปรแกรมเพื่อตรวจสอบ palindromes ใน 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.asList(arr)ซึ่งเป็นวิธีการในตัวที่ Arrays จัดทำขึ้นเพื่อแปลงอาร์เรย์เป็นรายการ ลองดูตัวอย่างวิธีการนำวิธีนี้ไปใช้:
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]

วิธีเขียนตัวตรวจสอบ Palindrome ใน Java

ที่มา: DZone ในบทความนี้ คุณจะได้เรียนรู้สองวิธีในการเขียนโปรแกรมตรวจสอบ palindrome ใน Java คอฟฟี่เบรค #164.  สามวิธีในการแปลงอาร์เรย์เป็นรายการ  วิธีเขียนโปรแกรมเพื่อตรวจสอบ Palindromes ใน Java - 2ในระหว่างการสัมภาษณ์ Java คุณอาจถูกขอให้เขียนโปรแกรมเพื่อตรวจสอบพาลินโดรม นี่เป็นหนึ่งในคำถามที่ยาก แต่ค่อนข้างบ่อยในระหว่างการสัมภาษณ์ พาลินโดรมคือตัวเลข คำ หรือสตริงที่อ่านเหมือนกันทั้งสองทิศทาง ในทางกลับกัน สิ่งที่ตรงกันข้ามคือไม่ใช่พาลินโดรม

พาลินโดรมมีหน้าตาเป็นอย่างไร?

เมื่อตัวอักษรหรือตัวเลขถูกจัดเรียงให้เป็นรูปสะท้อนของกันและกัน มันจะสร้างพาลินโดรมขึ้นมา ในบรรดาตัวอย่างมากมายของพาลินโดรม ได้แก่ 686, 140041, 95359, 7007, เรดาร์, กระท่อม, คุณปู่ และอื่นๆ นั่นคือถ้าคุณอ่านตัวอักษรย้อนหลัง จะเห็นได้ชัดว่าตัวอักษรเหล่านั้นสร้างภาพสะท้อนของกันและกัน ด้วยตัวดำเนินการส่วนที่เหลือและการหารใน Java เราสามารถสร้างโค้ดที่ตรวจสอบว่าตัวเลขใดเป็นพาลินโดรมหรือไม่

ขั้นตอนการสร้างโปรแกรมตรวจสอบพาลินโดรมตัวเลข

  1. เราป้อนหรือเริ่มต้นหมายเลขที่จะตรวจสอบ
  2. เราสร้างตัวแปรชั่วคราวและเก็บตัวเลขไว้
  3. ลองกลับจำนวนกัน
  4. เราเปรียบเทียบจำนวนชั่วคราวกับจำนวนผกผัน
  5. หากตัวเลขทั้งสองเท่ากัน แสดงว่าเป็นพาลินโดรม

โปรแกรม Java Palindrome โดยใช้ FOR loop

ด้านล่างนี้เป็นโปรแกรมใช้งานง่ายที่ใช้ For Loop เพื่อค้นหาพาลินโดรม ในการวนซ้ำตัวเลขในอินพุตจะถูกตรวจสอบซ้ำๆ จนกระทั่งค่าอินพุตเป็น 0 การวนซ้ำของ for จะพิจารณาโมดูลัสของตัวเลข (num) ซึ่งจัดเก็บไว้ในตัวแปรที่เรียกว่า ReverseNum สำหรับการวนซ้ำแต่ละครั้งของลูป เป็นผลให้เราสามารถได้อินพุตที่ตรงกันข้าม/ย้อนกลับโดยสมบูรณ์ จากนั้นนำตัวเลขที่พลิกไปเปรียบเทียบกับตัวเลขเดิมเพื่อดูว่าเป็นพาลินโดรมหรือไม่ นี่คือตัวอย่างที่ช่วยให้คุณตรวจสอบว่าหมายเลขที่กำลังทดสอบเป็นพาลินโดรมหรือไม่

อัลกอริธึมการทำงานของโปรแกรม

  1. จุดเริ่มต้นของโปรแกรม
  2. ยอมรับการป้อนข้อมูลของผู้ใช้หรือเริ่มต้นด้วยตนเอง (ตัวเลข)
  3. สร้างตัวแปรใหม่ ( InitialNum ) และบันทึกอินพุต
  4. จนกว่า num จะเท่ากับศูนย์ เราจะค้นหาส่วนที่เหลือของ 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 ไม่ใช่พาลินโดรม

โปรแกรม Palindrome ใน Java โดยใช้ While Loop

เมื่อเข้าใจตรรกะของโค้ดแล้ว ตอนนี้เรามาดูวิธีอื่นในการเขียนโปรแกรมพาลินโดรมใน Java โดยใช้การวนซ้ำในขณะที่ ในการวนซ้ำในขณะที่ ตัวเลขในอินพุตจะถูกตรวจสอบซ้ำๆ จนกระทั่งค่าอินพุตเป็น 0 การวนซ้ำ while จะพิจารณาโมดูลัสของตัวเลข (num) ซึ่งจัดเก็บไว้ในตัวแปรที่เรียกว่า ReverseNum สำหรับการวนซ้ำแต่ละครั้งของลูป สุดท้าย จำนวนกลับหัวจะถูกเปรียบเทียบกับหมายเลขเดิมเพื่อดูว่าเป็นพาลินโดรมหรือไม่ นี่คือตัวอย่างที่ให้คุณตรวจสอบว่าอินพุตเป็นตัวเลขพาลินโดรมหรือไม่

อัลกอริธึมการทำงานของโปรแกรม

  1. จุดเริ่มต้นของโปรแกรม
  2. ยอมรับการป้อนข้อมูลของผู้ใช้หรือเริ่มต้นด้วยตนเอง (ตัวเลข)
  3. สร้างตัวแปรใหม่ ( InitialNum ) และบันทึกอินพุต
  4. จนกว่า num จะเท่ากับศูนย์ เราจะค้นหาส่วนที่เหลือของ 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