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