输入数字 n,按顺序打印出所有的n位数。比如输入 3,则打印出100一直到最大的 3 位数 999。
package com.LeKou;
import java.util.ArrayList;
import java.util.Arrays;
public class Test{
public static int[] printNumbers(int n) {
ArrayList<Integer> list = new ArrayList();
//Math.pow()返回值为double类型,将其转换为int类型
int a = (int) Math.pow(10,n-1);
while (a<Math.pow(10,n)){
list.add(a);
a++;
}
//第一种方法
int[] arr = list.stream().mapToInt(Integer::valueOf).toArray();
//第二种方法,直接为数组的每个元素赋值
// int[] arr = new int[list.size()];
// for (int i = 0;i < arr.length;i++){
// arr[i] = (int) list.get(i);
// }
return arr;
}
//调用printNumbers方法,当n的值为1时
public static void main(String[] args) {
int n = 1;
int[] b = printNumbers(n);
System.out.println(Arrays.toString(b));
}
}
运行结果如下: