java 输入任意个10以下数字 达到效果 55555 4444 333 22 1 22 333 4444 55555
3个回答
展开全部
办法很多,直接打印最简单了
public static void justPrint(Integer num){
for (int i = num; i >1; i--) {
String s = "";
for (int j = 0; j < i; j++) {
System.out.print(i);
}
System.out.print(" ");
}
for (int i = 1; i <= num; i++) {
String s = "";
for (int j = 0; j < i; j++) {
System.out.print(i);
}
System.out.print(" ");
}
}
第二种,算是熟悉下工具类吧
public static String getResult(Integer num){
String[] arr = new String[num];
for (int i = 1; i <= num; i++) {
String s = "";
for (int j = 0; j < i; j++) {
s+=i;
}
arr[i-1]=s;
}
Object[] clone = ArrayUtils.remove(ArrayUtils.clone(arr), 0);
ArrayUtils.reverse(clone);
Object[] addAll = ArrayUtils.addAll(clone, arr);
return StringUtils.join(addAll," ");
}
当然还有其他方法,可以把55555 4444……等看成是数字来处理,上面都是作的字符串,就不列了,测试下吧
public static void main(String[] args) {
System.out.println(getResult(5));
justPrint(5);
}
展开全部
public class ForTest {
public static void main(String[] args) {
int num = 5;
for(int i=0;i<num;i++){
for(int j=0;j<num-i;j++){
System.out.print(num-i);
}
System.out.print("\t");
}
for(int i=1;i<num;i++){
for(int j=0;j<i+1;j++){
System.out.print(i+1);
}
System.out.print("\t");
}
}
}
再完善一下 , 其实是两个嵌套的for循环
public static void main(String[] args) {
int num = 5;
for(int i=0;i<num;i++){
for(int j=0;j<num-i;j++){
System.out.print(num-i);
}
System.out.print("\t");
}
for(int i=1;i<num;i++){
for(int j=0;j<i+1;j++){
System.out.print(i+1);
}
System.out.print("\t");
}
}
}
再完善一下 , 其实是两个嵌套的for循环
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
for循环一下1到输入的数字,循环里边输出输入的数字
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询