First of all, create a method called IsPrime() to check a number is prime or not. Now in main method we accept a number and cut the digit from last and check it is prime or not using IsPrime() method. As IsPrime() is a non-static method, we have to create a object of the said class. because we can not call any non-static method from static method.
import java.util.*;
public class PrimeDigit
{
public boolean IsPrime(int i)
{
boolean b=true;
int d=2;
while(d<i/2)
{
if (i%d==0)
{
b=false;
break;
}
d++;
}
return b;
}
public static void main(String []args)
{
Scanner sc=new Scanner(System.in);
System.out.print("Enter A Number : ");
int i=sc.nextInt();
int s=0,r;
PrimeDigit pd=new PrimeDigit();
while(i>0)
{
r=i%10;
if(pd.IsPrime(r))
{
s = s + r;
}
i = i / 10;
}
System.out.print("Sum Of The Prime Digits : " + s );
}
}
Output
Enter A Number : 7865
Sum Of The Prime Digits : 12