Algarismos em posições comuns

Boa noite pessoal, gostaria da ajuda de vocês. O meu professor pediu que implementasse um módulo que dados dois números inteiros positivos retorne a quantidade de dígitos comuns nas mesmas posições. Eu fiz com Strings e o não passa nos testes do Mooshak o professor disse que eu declara-se como Int porém quando faço isso não compila, alguém poderia me ajudar com isso? segue o codigo
import java.util.Scanner;

public class CommonPosition {
public static int quantidadeDigitosComunsNaMesmaPosicao(int num1, int num2) {

    String num1String;
    String num2String;
    int resultado = 0;

    if(num1 < 0 || num2 < 0) {
        
    } else {

        num1String = Integer.toString(num1);
        num2String = Integer.toString(num2);

        if(num2String.length() > num1String.length()) {
            String temp = num1String;
            num1String = num2String;
            num2String = temp;
        }

        for(int i = 0; i < num2String.length(); i++) {
            if(num1String.charAt(i) ==  num2String.charAt(i)) {
                resultado++;
            }
        }

    }

    return resultado;

}


public static void main(String[] args) {

    int n;
    int par1;
    int par2;
    int maiorDigitosComuns = 0;
    int maiorPar1 = 0;
    int maiorPar2 = 0;

    Scanner scanner = new Scanner(System.in);

    do {
        
        n = scanner.nextInt();
    } while (n <= 0);

    for (int i = 0; i < n; i++) {

        

        
        par1 = scanner.nextInt();

        
        par2 = scanner.nextInt();

        if (quantidadeDigitosComunsNaMesmaPosicao(par1, par2) > maiorDigitosComuns) {
            maiorDigitosComuns = quantidadeDigitosComunsNaMesmaPosicao(par1, par2);
            maiorPar1 = par1;
            maiorPar2 = par2;
        }

    }

    System.out.println(+ maiorPar1 +"/"+ maiorPar2 );

  } 

}

Creio que no fórum já existe um tópico com o mesmo problema: Algarismos em Posição Comum.