如何使用for循环复制char变量

时间:2016-03-18 22:22:21

标签: java loops for-loop character

所以我想知道如何使用for循环复制字母c。我用*符号做了这个,但似乎无法使用字母c。我用IBIO来获取输入。我需要知道如何以与*相同的方式复制c。当我运行代码时,c只打印一次。为什么是这样?请帮我解决。

 public class Methods
 {
     public static void main (String args[])
    {
        new Methods ();
    }


    public quadMethods ()
    {
        printNStars (5);
        printNChars (6, 'q');

    }


    public void printNStars (int n)
    { //prints 'n' stars on the screen in a row
    n = IBIO.inputInt ("Enter a number for 'n': ");
    for (int i = 0; i <= n; i++)
     System.out.print ("*");
    System.out.println ("");
    }


    public void printNChars (int n, char c)
    { //prints 'n' of character c on the screen in a row
    for (int i = 0; i <= n; i++);
    {
     System.out.print ("c");
    }
    System.out.println ("");
    }
}

1 个答案:

答案 0 :(得分:0)

你有几个问题。一个是两个循环的迭代次数:

public void printNStars (int n)
{
    n = IBIO.inputInt ("Enter a number for 'n': ");
    for (int i = 0; i <= n; i++)
        System.out.print ("*");
    System.out.println ("");
}

这将输入一个数字并打印n+1个星星。你可能意味着这样做:

public void printNStars (int n)
{
    for (int i = 0; i < n; i++)
        System.out.print ("*");
    System.out.println ("");
}

第二个问题是你的其他循环中的分号:

for (int i = 0; i <= n; i++);

这会创建一个不执行任何操作的循环。输出语句也输出c s,而不是传入的字符!

第二个功能应该是:

public void printNChars (int n, char c)
{
    for (int i = 0; i < n; i++)
    {
        System.out.print (c);
    }
    System.out.println ("");
}