用户键入的名称以为Java程序加注星

时间:2019-11-26 18:22:49

标签: java

我是编程新手,被困在一项任务上。它说,用户应该输入他们的名字和大小,然后将其打印成具有该大小的星星,它还应该在该程序中使用循环,而不仅仅是散布星星。 我不知道如何解决这个问题,所以如果有人可以给我一个主意,我将不胜感激:)

到目前为止,我尝试过的是: (更新): 我能够完成整个编码并达到我想要的功能,但是我遇到的问题是,如果用户更新大小为n,那么在打印Pattern(A时,如何在整个开关中使用它)打印字母的星标

 let imageData = image.jpegData(compressionQuality: 1)!

 let params = ["image": imageData, "name": "someTestImage", "title": "someImage"] as [String : Any]
//....
var request = URLRequest(url: resource.url)
request.httpMethod = "POST"
request.httpBody = try! JSONSerialization.data(withJSONObject: params, options: .prettyPrinted)

2 个答案:

答案 0 :(得分:0)

如果您提供了一个示例,那么我对您期望输出的结果不是100%清楚。但是,通过现在实现程序的方式,您将希望将switch语句放在while循环内,以继续执行程序,直到用户输入3。

while (option != 3)
{
    switch (option)
    {
        // code
    }
    // code
    option = input.nextInt();
}

在该while块中,您可以在用户输入其指定选项时执行所需的任何语句。根据代码的要求,您还应该考虑验证用户输入。如果他们不输入1、2或3,会怎样?

答案 1 :(得分:0)

public static void main(String[] args){
    Scanner input = new Scanner(System.in);

    System.out.println("Hello, Welcome to Işık NameIt program. ");
    System.out.println("----------------------------------------");
    System.out.println("The following options are available for you:\n" +
            "1) Display a name\n" +
            "2) Change the size\n" +
            "3) Exit Program");
    System.out.print("Choose an option: ");

    int option = input.nextInt();
    int size = option.length;

    while(option !=3){
    switch (option){

        case 1:
             for(int index = 0; index <= size; index++) {
                 System.out.print("*");
             }
             System.out.println(" ");
        case 2:
            System.out.print("What is the new size? ");
            size = input.nextInt();
            input.nextLine();
        case 3:
            break;

      }
   }
}