java字符串最长回文串_Java中的字符串回文程序

java字符串最长回文串

Given a string and we have to check whether it is palindrome string or not.

给定一个字符串,我们必须检查它是否是回文字符串。

A string that is equal to its reverse string is known as palindrome string. To implement the program for checking whether a given string is a palindrome or not, we have created a function "isPalindrome()".

等于其反向字符串的字符串称为回文字符串 。 为了实现检查给定字符串是否为回文程序 ,我们创建了一个函数“ isPalindrome()”

In the function,

在功能上

  • We are checking for whether a string is an empty string or not – if the string is an empty string then throwing an error.

    我们正在检查一个字符串是否为空字符串-如果该字符串为空字符串,则抛出错误。

  • Then, we are converting string to uppercase to make comparison case insensitive.

    然后,我们将字符串转换为大写以使比较大小写不敏感。

  • Then, running a loop from 0 to len/2, to compare the first character with last character, the second character with second last character and so on..., and checks whether they are equal or not if both the elements are equal it goes for the next one. If not, then code returns false. Going on comparing first and last elements of the string if it reaches the length/2 mark then the loop ends, and return true for Palindrome.

    然后,从0到len / 2循环运行,比较第一个字符与最后一个字符,第二个字符与倒数第二个字符,依此类推...,并检查两个元素是否相等,是否相等?去下一个。 如果不是,则代码返回false。 继续比较字符串的第一个和最后一个元素(如果它达到length / 2标记),则循环结束,并为回文式返回true。

用于检查字符串回文的Java代码 (Java code for checking string palindrome)

// Java code for checking string palindrome 

public class Main {
    //function to check whether string is Palindrome or not
    public static boolean isPalindrome(String str) {
        // Checking for null
        if (str == null) {
            throw new IllegalArgumentException("String is null.");
        }

        // length of the string
        // if there is one character string - returing true
        int len = str.length();
        if (len <= 1) {
            return true;
        }

        // Converting the string into uppercase 
        // to make the comparisons case insensitive 
        String strU = str.toUpperCase();

        // result variable
        // default initializing it with true
        boolean result = true;

        for (int i = 0; i < len / 2; i++) {
            if (strU.charAt(i) != strU.charAt(len - 1 - i)) {
                result = false;
                // break the loop if the condition is true
                break;
            }
        }
        return result;
    }

    //main code  
    public static void main(String[] args) {
        String str1 = "Hello world!";
        if (isPalindrome(str1)) {
            System.out.println(str1 + " is a palindrome string ");
        } else {
            System.out.println(str1 + " is not a palindrome string ");
        }

        String str2 = "ABCxCBA";
        if (isPalindrome(str2)) {
            System.out.println(str2 + " is a palindrome string ");
        } else {
            System.out.println(str2 + " is not a palindrome string ");
        }

        String str3 = "noon";
        if (isPalindrome(str3)) {
            System.out.println(str3 + " is a palindrome string ");
        } else {
            System.out.println(str3 + " is not a palindrome string ");
        }

        String str4 = "nooN";
        if (isPalindrome(str4)) {
            System.out.println(str4 + " is a palindrome string ");
        } else {
            System.out.println(str4 + " is not a palindrome string ");
        }
    }
}

Output

输出量

Hello world! is not a palindrome string
ABCxCBA is a palindrome string
noon is a palindrome string
nooN is a palindrome string


翻译自: https://www.includehelp.com/java-programs/string-palindrome-program-in-java.aspx

java字符串最长回文串

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值