如何写一个Java程序来获得从用户的数,从该取出的奇数和不使用阵列显示偶数(例如:I / P:2345678,O / P:2468)
我可以做阵列。
public class NumberSearch {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
int n[] = {1,2,3,4,5,6};
System.out.println("Even number");
for(int i=0;i<n.length;i++){
if(n[i]%2==0){
System.out.println(n[i]);
}
}
}}
但我想用做数字123456像这样不使用数组。
您可以通过文字去,且只甚至是那些添加到输出字符串。
String input = "2345678";
StringBuilder sb = new StringBuilder();
for(char c : input.toCharArray()) {
if(Character.getNumericValue(c) % 2 == 0) {
sb.append(c);
}
}
String output = sb.toString();
System.out.println(output);
输出:
2468
StringBuilder
因为它是在循环效率更高。Character.getNumericValue
到char
转变成其数值解析INT输入到串,更换所有的奇数数字,并打印输出(如果需要解析回INT):
int input = 123456;
String str = String.valueOf(input);
String res = str.replaceAll("[13579]", "");
System.out.println(res);