JavaRush /Java 博客 /Random-ZH /喝咖啡休息#164。将数组转换为列表的三种方法。如何用 Java 编写回文检查器

喝咖啡休息#164。将数组转换为列表的三种方法。如何用 Java 编写回文检查器

已在 Random-ZH 群组中发布

将数组转换为列表的三种方法

来源: Rrtutors Java 开发人员经常需要将数组转换为列表,尤其是在处理元素列表时。在这篇文章中,您将学习在 Java 中将数组转换为列表的三种方法。 喝咖啡休息#164。 将数组转换为列表的三种方法。 如何用 Java 编写一个检查回文的程序 - 1

将数组转换为列表的三种方法

您可以使用三种方法将数组转换为列表:
  1. 创建一个空列表并添加元素。
  2. 使用Arrays.asList()方法。
  3. 使用new ArrayList<>(Arrays.asList(arr))

方法一:创建一个空列表,然后添加元素

这种方法是三种方法中最简单的,大多数开发人员认为它非常琐碎和明显。要使用它,您需要遵循三个简单的步骤:
  • 步骤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:使用new 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 编写回文检查器

来源:DZone 在本文中,您将学习两种用 Java 编写回文检查程序的方法。 喝咖啡休息#164。 将数组转换为列表的三种方法。 如何用 Java 编写一个检查回文的程序 - 2在 Java 面试中,您可能会被要求编写一个程序来检查回文。这是困难的问题之一,但在面试中很常见。回文是双向读取相同的数字、单词或字符串。反过来,它们的对立面是非回文。

回文是什么样子的?

当字母或数字排列成彼此的镜像时,就会创建回文。回文的例子有很多,其中有686、140041、95359、7007、雷达、小屋、祖父等等。也就是说,如果你倒着读这些字母,很明显它们形成了彼此的镜像。利用 Java 中的余数和除法运算符,我们可以创建代码来检查特定数字是否是回文。

创建用于检查数字回文的程序的阶段

  1. 我们输入或初始化要检查的号码。
  2. 我们创建一个临时变量并将数字存储在其中。
  3. 让我们反转这个数字。
  4. 我们将临时数与倒数进行比较。
  5. 如果两个数字相等,则它是回文。

使用FOR循环的Java回文程序

下面是一个易于使用的程序,它使用 For 循环来查找回文。在 for 循环中,会重复检查输入中的数字,直到输入值为 0。for 循环会考虑数字 (num) 的模数,该模数在循环的每次迭代中存储在名为verseNum 的变量中结果,我们可以获得与输入完全相反的结果。然后将翻转后的数字与原始数字进行比较,以确定它是否是回文。这是一个示例,可让您检查正在测试的数字是否是回文。

程序运行算法

  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 不是回文。

Java 中使用 While 循环的回文程序

了解了代码的逻辑后,现在让我们看看用 Java 编写回文程序的另一种方法 - 使用 while 循环。在 while 循环中,重复检查输入中的数字,直到输入值为 0。 while 循环会考虑数字 (num) 的模数,该模数在循环的每次迭代中存储在名为verseNum 的变量中。最后将反转后的数与原数进行比较,判断是否为回文数。这是一个允许您检查输入是否是回文数的示例。

程序运行算法

  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