问题描述
||
我正在回答有关编程入门课程的问题,在阅读完我的笔记,Big Java书籍并在线查找后,无法找到从哪里开始。
似乎应该很简单,但是我只需要开始。所有这些都是针对Java的,并且正在Eclipse中进行开发。
任务是输入一个名称(\“ Name \”)和一个数字(int x),并在一行中显示\“ Name \” x次,在另一行中显示x-1次,依此类推,直到您只显示一次名称。似乎应该是反向累加器,但是我在启动方法时遇到了麻烦。我该如何开始?我知道我无法像使用python或其他语言一样在Java中将字符串相乘,但是如何在不构建数组或输入的情况下打印\“ Name \” x次
System.out.println(\"name\" + \" \" + \"name\" + \" \"...).
任何建议表示赞赏。我是新手。谢谢!
解决方法
您需要一个循环,这是编程语言的常见功能。
仔细看一下Java
for
循环。
附加提示:
System.out.println(\"test\")
在一行中打印它的参数,而System.out.print(\"test\")
在test
之后不加CR/LF
。
,您应该阅读有关Java流控制语句的信息。 for
和while
构造将允许您执行所需的操作。
,您的方法将获得一个包含名称和计数的字符串。使用一个for循环进行计数,使用另一个for重复名称值,您应该能够获得所需的输出。
System.out
是一个打印流,它既有println()
输出以换行符结尾的行,又有has10ѭ输出字符串而不以换行符结尾。
,您可以使用System.out.print
和System.out.println
进行此操作。
这是示例代码:(不是您想要的实际代码,只是一个SAMPLE)
import java.io.*;
public class StringNameTest
{
public static void main(String args[])
{
String strNumber = \"\";
String strName = \"\";
int intNumber;
try
{
// open up standard input
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// prompt the user to enter their name
System.out.print(\"Enter your name: \");
strName = br.readLine();
System.out.print(\"Enter the number of times you want to print your name: \");
strNumber = br.readLine();
intNumber = Integer.parse(strNumber);
for (row = 0; row < intNumber; row++)
{
for(col = 0; col < intNumber; col++)
System.out.print(strName + \" \");
System.out.println(\"\");
}
}
catch (Exception ex) {
System.out.println(ex.getMessage());
System.exit(1);
}
}
}
希望这可以帮助。
,使用计数为x的外循环和计数为(x-外循环计数器)的内循环。请注意常见的“一次性关闭”错误。
,Java没有内置的String重复是正确的。但是您可以定义自己的方法来执行此操作。
public static String repeated(String s,int times) {
StringBuilder sb = new StringBuilder();
// TODO: append /s/ to /sb/ for /times/ times.
return sb.toString();
}
对您来说,您要使用此\“ operator \\”而不是将所有内容都放入一个大代码块中,这对您来说是个好主意。这有助于保持程序的可读性。
,首先考虑:您需要15行。因此,进入循环。
for (int i = 0; i < n; ++i)
{
然后:您需要在字符串line17ѭ上打印字符串n - i
次。输入嵌套循环:
for (int j = 0; j < n - i; ++j)
{
然后开始打印名称:
System.out.print(name + \" \");
}
注意,我没有使用println
,因为我们希望所有名称都在同一行上。
现在,当我们打印n - i
次时,您需要结束一行:
System.out.println();
关闭我们的外循环:
}
如果您不知道如何制作程序,请向用户询问名称和整数the15ѭ:
String name = null;
int n = 0;
try
{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.print(\"Enter the name: \");
name = br.readLine();
System.out.print(\"How many times (n): \");
n = Integer.parseInt(br.readLine());
} catch (Exception e)
{
e.printStackTrace();
System.exit(-1); // exit!,there was an error
}
,public class test{
public static void main(String[] args){
int i = 0;
int j = 20;
for(i = 1; i <= j; i++){
System.out.println(\"My Name\");
} //ends for loop
// use system.out.print(\"\") for same line
} //ends static void main
}
,int x;
int y = 1;
x = scanner.nextInt();
for (int i = 1; i <= x; i++) {
for (int j = 1; j <= y; j++) {
System.out.print(\"O\");
}
System.out.println();
++y;
}
,public class WithoutLoop
{
static int count;
public static void repeat(String s)
{
while(count <= 10)
{
System.out.println(s);
count++;
}
}
public static void main(String[] args)
{
repeat(\"hello\");
}
}