2 qq 29116547 qq_29116547 于 2017.01.02 19:37 提问

java循环的for基础问题

初学者,学到循环。
就是有什么比这个简单的方法,输出菱形,感觉我这个很麻烦。

图片说明

14个回答

caozhy
caozhy   Ds   Rxr 2017.01.02 20:06
已采纳
 /* package whatever; // don't place package name! */

import java.util.*;
import java.lang.*;
import java.io.*;

/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
    public static void main (String[] args) throws java.lang.Exception
    {
        // your code goes here
        for (int a=1; a<=5; a++) {
            for (int b=a;b<5+a;b++) System.out.print(b >= 5 ? "* " : " ");
            System.out.println();
        }
        for (int a=1; a<=4; a++) {
            for (int b=0;b<a;b++) System.out.print(" ");
            for (int b=a;b<5;b++) System.out.print("* ");
            System.out.println();
        }
    }
}
o6874535
o6874535 玩这个 有什么意思
一年多之前 回复
caozhy
caozhy 回复qq_29116547: 看楼下的代码
一年多之前 回复
qq_29116547
qq_29116547 谢谢啦!
一年多之前 回复
caozhy
caozhy   Ds   Rxr 2017.01.02 20:18
 /* package whatever; // don't place package name! */

import java.util.*;
import java.lang.*;
import java.io.*;

/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
    public static void main (String[] args) throws java.lang.Exception
    {
        // your code goes here
        for (int a=1; a<=10; a++) {
            if (a<=5) for (int b=a;b<5+a;b++) System.out.print(b >= 5 ? "* " : " ");
            else for (int b=0;b<5;b++) System.out.print(b >= a-5 ? "* " : " ");
            System.out.println();
        }
    }
}

这个最简单了

u012948520
u012948520 确实简化了一点,但是代码写一行,让人看起来感觉代码量少了好多,是个作弊的行为。还有些如for(int i = 0; i < max; action);这样的代码,其实除了增加阅读难度,没什么意思)
一年多之前 回复
caozhy
caozhy   Ds   Rxr 2017.01.02 20:19

一共压缩到4行代码

在线测试
http://ideone.com/BkKMT1

zj_maddog
zj_maddog 可以
一年多之前 回复
qq_29116547
qq_29116547 学习了
一年多之前 回复
anqi0819
anqi0819   2017.01.17 10:22

你还不如直接print输出凑一个菱形呢。

jinziweiwang
jinziweiwang   2017.01.24 10:06

## 采纳的答案有一定的不足,如果要6个*或者更多,应该参数化更好_

lanrenxiaowen
lanrenxiaowen   2017.02.05 09:41

代码真正的简洁不是代码写的少就算简洁了,真正的简洁是逻辑上的简洁

my_name_nb
my_name_nb   2017.02.10 21:26

也就这样吧 简单复杂 看你怎么理解

zzhao114
zzhao114   2017.02.11 15:48

大神好多。。。。。。。

testcs_dn
testcs_dn   Rxr 2017.01.02 20:15

有意思;

    public static void main(String[] args) {
        int size = 7;
        int limit = (size - 1) / 2;

        for (int i = 0; i < size; i++)
        {
            String _temp = (newString(" ", Math.abs(limit)) + newString("*", size - Math.abs(limit) * 2));
            System.out.println(_temp);
            limit--;
        }
    }

    public static String newString(String init, int length){
        String tmp = "";
        for (int i = 0; i < length; i++)
        {
            tmp += init;
        }
        return tmp;
    }
qq_29116547
qq_29116547 你这个不只有循环了,我只学到循环啊大哥,你的定义了类,有数组,后面还加了函数,不过还是感谢
一年多之前 回复
Google_huchun
Google_huchun   2017.01.07 16:29

for (int a=1; a<=5; a++) {
for (int b=a;b= 5 ? "* " : " ");
System.out.println();
}
for (int a=1; a<=4; a++) {
for (int b=0;b<a;b++) System.out.print(" ");
for (int b=a;b<5;b++) System.out.print("* ");
System.out.println();
}

            for 内置方法
共14条数据 1 尾页
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Java基础之for循环案例
从键盘读入10个整数,统计正数、负数和零的个数import java.util.Scanner;public class For01{ public static void main(String[] args){ int a = 0; //记录正数的个数 int b = 0; //记录负数的个数 int c = 0; //记录零的个
java初级—循环练习题答案
学习java过程中,看到几个循环相关的练习题,就写了写,小白一只,对循环的理解还不够透彻,总之就是一些简单的课后习题吧。
经典for循环面试题
public class Example01 { public static void main(String[] args) { int i = 0; for(loop('A');(i<2)&&loop('B');loop('C')){ i++; loop('D'); } } pri
Java (for循环基础应用)
①:定义两个变量,并同时计数 package Z1;   public class Test2 {    public static void main(String[] args) {        int sum = 0;        for (int a = 1, b = 100; a         sum += a + b;
java面试题十五 for循环一个题目
-
java的for循环案例
for循环案例,java代码,利用for循环从控制台输出了几个简单的图形,内容简单,适合新手
20道经典Java面试基础题
广州华信智原 2016-10-14 15:57 对于很多初入编程行业的程序员来说,第一次面试编程工作时是最紧张最无助的,因为他们从来没有面试过这类工作,不知道主考官会问什么。那么一般初级Java面试时会问哪些问题呢?广州华信智原在这里为大家准备了20道经典Java面试基础题。 1、如果main方法被声明为private会怎样? 能正常编译,但运行的时候会提示”main方法不是pu
黑马程序员—【Java基础篇】之语言基础———for嵌套循环练习题
------- android培训、java培训、期待与您交流! ---------    上篇分享和总结了Java语言基础程序流程控制和函数; 那么接下来我继续为大家分享for嵌套循环2道练习题。 /** * 第1题:用控制台程序倒着输出九九乘法表;输出结果按下图所示: * 1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=5
for循环作用域问题
<br />以下程序会alert什么? <br /> var arr = []; for(var i=0; i< 2;i++){ var fn = function(){ alert(i) } arr.push(fn); } for(var j in arr){ var fn = arr[j]; fn(); }<br />答案是 2 , 2<br />其实理应让其alert 0,1才对<br />这是因为第一个for循环里面创建函数fn的时候里面的i
java常见面试基础问题整理
1、short s1 = 1; s1 = s1 + 1;有错吗?short s1 = 1; s1 += 1;有错吗? 答案:s1 = s1+1 ; 会提示“cannot convert from int to short”,1本身是int类型,而s1是短整型,所以他们二者运算结果是int类型,要想使表达式成立,需要将结果强制转换成short类型 s1+=1;相当于s1