Java:如何重构代码以减少冗余?

问题描述

//这是我的代码,我在问我是否可以重复m的步骤而不必重写。

Scanner input = new Scanner(system.in);
        System.out.print("First 3-digit number: ");
        int n = input.nextInt();
        System.out.print("Second 3-digit number: ");
        int m = input.nextInt();
        
        
        int n3 = n % 10;
        int n2 = n / 10 % 10;
        int n1 = n / 100 % 10;

        if (n1 == n3) {
            System.out.println( "yes");
        } else {
            System.out.println( "No");

解决方法

正如洛克在评论中提到的那样,您可以使用函数来重构代码以减少冗余。例如,我将创建一个类似这样的函数:

public static int getInput(String msg)
{
     System.out.print(msg);
     int m = input.nextInt();
     return m;
}

并在代码中使用该函数,如下所示:

Scanner input = new Scanner(System.in);
    int n = getInput("First 3-digit number: ");
    int m = getInput("Second 3-digit number: ");
    
    
    int n3 = n % 10;
    int n2 = n / 10 % 10;
    int n1 = n / 100 % 10;

    if (n1 == n3) {
        System.out.println( "yes");
    } else {
        System.out.println( "No");

我希望你有主意。