如何通过使用方法在Java中找到常见的后缀 [英] how to find common suffix in java by using method

查看:108
本文介绍了如何通过使用方法在Java中找到常见的后缀的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何使用方法

public static String commonSuffix (String s1, String s2)

我无法在方法中返回结果.请帮助我

I can't return the result in method. Please help me

import java.util.Scanner;

public class ders1 {

    public static void main(String[] args) {
        //HW3 Topic 3
        Scanner input = new Scanner(System.in);

        String reverse1="";
        String reverse2="";
     System.out.println("Please enter the first string: ");
     String s1=input.nextLine();

     System.out.println("Please enter the second string: ");
     String s2=input.nextLine();

     int l1=reverse1.length();
     int l2=reverse2.length();



     for ( int i = s1.length() - 1 ; i >= 0 ; i-- )
     {
        reverse1 = reverse1 + s1.charAt(i);
     }

     for ( int i = s2.length() - 1 ; i >= 0 ; i-- )
     {
        reverse2 = reverse2 + s2.charAt(i);
     }
     if(l1<l2){ 
        int l3=l2;

     System.out.println(reverse1 + " " + reverse2);
     System.out.println(commonSuffix(reverse1,reverse2,l3));
     }

     else {
         int l3=l1;
         System.out.println(reverse1 + " " + reverse2);

         System.out.println(commonSuffix(reverse1,reverse2,l3)); 
     }
    } 
    public static String commonSuffix (String reverse1, String reverse2,int l3){

        String suffixies="";
        for(int k=0; k<=l3 ; k++){
            if(reverse1.charAt(k)!=reverse2.charAt(k)){

        }
            else{
            suffixies+=reverse1.charAt(k);  
        }    
    }
        return suffixies;
   }
}       

有人可以帮助我修复此代码吗?

Can someone help me fix this code??

推荐答案

请参阅以下代码(我已经对其进行了测试):

Please see the following code (I have tested it):

import java.util.Scanner;

public class ders1 {

    public static void main(String[] args) {
        // HW3 Topic 3
        Scanner input = new Scanner(System.in);

        String reverse1 = "";
        String reverse2 = "";
        System.out.println("Please enter the first string: ");
        String s1 = input.nextLine();

        System.out.println("Please enter the second string: ");
        String s2 = input.nextLine();

        for (int i = s1.length() - 1; i >= 0; i--) {
            reverse1 = reverse1 + s1.charAt(i);
        }

        for (int i = s2.length() - 1; i >= 0; i--) {
            reverse2 = reverse2 + s2.charAt(i);
        }

        int l1 = reverse1.length();
        int l2 = reverse2.length();

        if (l1 < l2) {
            int l3 = l1;
            System.out.println(reverse1 + " " + reverse2);
            System.out.println(commonSuffix(reverse1, reverse2, l3));
        } else {
            int l3 = l2;
            System.out.println(reverse1 + " " + reverse2);
            System.out.println(commonSuffix(reverse1, reverse2, l3));
        }
    }

    public static String commonSuffix(String reverse1, String reverse2, int l3) {
        String suffixies = "";
        for (int k = 0; k < l3; k++) {
            if (reverse1.charAt(k) != reverse2.charAt(k)) {
                break;
            } else {
                suffixies += reverse1.charAt(k);
            }
        }

        // Reverse again
        String reverse = "";
        for (int i = suffixies.length() - 1; i >= 0; i--) {
            reverse = reverse + suffixies.charAt(i);
        }

        return reverse;
    }
}

输出:

Please enter the first string: 
caption
Please enter the second string: 
action
noitpac noitca
tion

这篇关于如何通过使用方法在Java中找到常见的后缀的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆