题解 | 牛牛数数
牛牛数数
https://www.nowcoder.com/practice/03a3cc96fa4847b387bf58bb800d67cf
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
while (in.hasNextInt()) { // 注意 while 处理多个 case
int n = in.nextInt();
for(int i = 1; i <= n; i++){
boolean include = ifinclude(i);
if(i % 4 != 0 && include == false){
System.out.println(i);
}
}
}
}
public static boolean ifinclude(int i){
String string = String.valueOf(i);
int num = string.length();
for(int j = 0; j < num; j++){
char c = string.charAt(j);
if(Character.getNumericValue(c) == 4){
return true;
}
}
return false;
}
}
对于各个位的数字是否有4这个问题:先转化成字符串,再从字符串中依次提取字符,将字符转换回int类型后进行比较
也可以直接用string.contains("4")来判断string中是否包含有字符4:
if(i % 4 != 0 && contains(i) == false){
System.out.println(i);
}
public static boolean contains(int i){
String string = String.valueOf(i);
return string.contains("4");
}

