主要有两种方法:
1)使用过String.endsWith()方法,轻松判断;
2)截取字符串,String.substring(),进行equals判断;
import java.util.*;
public class Main{
public static void main(String[] args){
Scanner scan=new Scanner(System.in);
int n=scan.nextInt();
int count=0;
for(int i=0;i<=n;i++){
if(flag(i)) count++;
}
System.out.println(count);
}
//判断该数是否为自守数
public static boolean flag(int n){
String n1=Integer.toString(n);
String n2=String.valueOf((int)Math.pow(n,2));
// if(n2.substring(n2.length()-n1.length()).equals(n1)){
// return true;
// }else {
// return false;
// }
//使用String方法 endsWith() startsWith()
if(n2.endsWith(n1)){
return true;
}else {
return false;
}
}
}

京公网安备 11010502036488号