Java数组循环
我有一个问题,我正试图为我正在上课的课程回答(是的,这是一个家庭作业问题-一个额外的学分),但我不希望有人简单地给我答案。我更希望有人轻轻地指出我应该(或不应该)做什么来解决这个问题的正确方向 这个课程是我第一次接触Java,所以如果我的代码和理解让人觉得很糟糕,那就是原因,所以我提前道歉 问题是: 我需要创建一个3行5列3集的数组。我的输出类似于: 第1组: 01 2 3 4 56789 1011121314 第2组: 1516171819 20 21 22 23 24 等等等等 我能够计算出的代码(到目前为止)产生了我需要的3个集合的整体范围,0-44,但我不确定如何格式化这些集合,所以看起来像上面的一样。当我运行代码时,我只有一个从0到44的长列表 有没有人能给我指出一个正确的方向,我应该做些什么来把这些列表分成我需要的行/列,而不是简单地给我答案?我想说的是,我是自己想出来的,只是需要问一个去那里的小方向 我的代码:Java数组循环,java,arrays,loops,Java,Arrays,Loops,我有一个问题,我正试图为我正在上课的课程回答(是的,这是一个家庭作业问题-一个额外的学分),但我不希望有人简单地给我答案。我更希望有人轻轻地指出我应该(或不应该)做什么来解决这个问题的正确方向 这个课程是我第一次接触Java,所以如果我的代码和理解让人觉得很糟糕,那就是原因,所以我提前道歉 问题是: 我需要创建一个3行5列3集的数组。我的输出类似于: 第1组: 01 2 3 4 56789 1011121314 第2组: 1516171819 20 21 22 23 24 等等等等 我能够计算出
public static void main(String[] args) {
int list[][][] = new int [3][5][3]; //create rows, column, units (buildings) array structure.
int i,j,k; //assign variables for row, column and unit (building).
int ctr = 0; //set counter.
//create array
for (i=0; i<3; i++)
for (j=0; j<5; j++)
for (k=0; k<3; k++)
{list[i][j][k] = ctr++;}
for (i=0; i<3; i++)
for (j=0; j<5; j++)
for (k=0; k<3; k++)
//Format array
{System.out.println(list[i][j][k] + " ");}
}
publicstaticvoidmain(字符串[]args){
int list[][]=新建int[3][5][3];//创建行、列、单位(建筑)数组结构。
int i,j,k;//为行、列和单位(建筑)分配变量。
int ctr=0;//设置计数器。
//创建数组
对于(i=0;i您需要使用System.out.println()
在这两行之间打印新行。另外,println()
总是在字符串后面打印新行(就像按Enter键一样)。还有System.out.print()
,它不会在字符串后面放新行
想想你什么时候需要新行。在每一行或每一列之后?也许在每一组后面加一行,以形成一个空行
编辑:我已经正确地缩进了你的代码。这样会更容易看到在哪里添加代码
int list[][][] = new int [3][5][3]; //create rows, column, units (buildings) array structure.
int i,j,k; //assign variables for row, column and unit (building).
int ctr = 0; //set counter.
//create array
for (i=0; i<3; i++) {
for (j=0; j<5; j++) {
for (k=0; k<3; k++) {
list[i][j][k] = ctr++;
}
}
}
for (i=0; i<3; i++) { //Prints 3 sections.
for (j=0; j<5; j++) { //Prints 5 rows.
for (k=0; k<3; k++) { //Prints 3 columns.
//Format array
System.out.println(list[i][j][k] + " ");
}
}
}
int list[][]=新建int[3][5][3];//创建行、列、单位(建筑)数组结构。
int i,j,k;//为行、列和单位(建筑)分配变量。
int ctr=0;//设置计数器。
//创建数组
对于(i=0;i首先,一些缩进:
public static void main(String[] args) {
int list[][][] = new int [3][5][3]; //create rows, column, units (buildings) array structure.
int i,j,k; //assign variables for row, column and unit (building).
int ctr = 0; //set counter.
//create array
for (i=0; i<3; i++) {
for (j=0; j<5; j++) {
for (k=0; k<3; k++) {
list[i][j][k] = ctr++;
}
}
}
for (i=0; i<3; i++) {
for (j=0; j<5; j++) {
for (k=0; k<3; k++) {
//Format array
System.out.println(list[i][j][k] + " ");
}
}
}
}
publicstaticvoidmain(字符串[]args){
int list[][]=新建int[3][5][3];//创建行、列、单位(建筑)数组结构。
int i,j,k;//为行、列和单位(建筑)分配变量。
int ctr=0;//设置计数器。
//创建数组
对于(i=0;i
如果您使用有意义的变量,如行、列、集,而不是i、j、k,这将有助于您(和读者)理解您的逻辑
你的格式很…有趣!还不错,这不是人们通常用Java思考的方式。我可以理解你写的东西,但我可以告诉你你用的是另一种语言
我将您的代码粘贴到Eclipse并进行了自动格式化(Ctrl-Shift-F),结果如下:
public static void main(String[] args) {
int list[][][] = new int[3][5][3]; // create rows, column, units
// (buildings) array structure.
int i, j, k; // assign variables for row, column and unit (building).
int ctr = 0; // set counter.
// create array
for (i = 0; i < 3; i++)
for (j = 0; j < 5; j++)
for (k = 0; k < 3; k++)
{
list[i][j][k] = ctr++;
}
for (i = 0; i < 3; i++)
for (j = 0; j < 5; j++)
for (k = 0; k < 3; k++)
// Format array
{
System.out.println(list[i][j][k] + " ");
}
}
publicstaticvoidmain(字符串[]args){
int list[][]=新建int[3][5][3];//创建行、列、单位
//(建筑物)阵列结构。
int i,j,k;//为行、列和单位(建筑)分配变量。
int ctr=0;//设置计数器。
//创建数组
对于(i=0;i<3;i++)
对于(j=0;j<5;j++)
对于(k=0;k<3;k++)
{
列表[i][j][k]=ctr++;
}
对于(i=0;i<3;i++)
对于(j=0;j<5;j++)
对于(k=0;k<3;k++)
//格式数组
{
System.out.println(list[i][j][k]+“”);
}
}
我不想吹毛求疵,但这是朝着正确方向迈出的必要一步,在你能给这段代码增加一点复杂性之前。另外,你的教授可能也期望类似的格式
您可能知道,println添加了一个换行符,而print没有。因此,在最一般的情况下,第一步是使用print,而不是println;并且只有在您实际需要移动到新行时才使用println。既然您只要求一个提示,我就不提了。祝您好运
尝试使用System.out.print(yourString)
,并使用for循环作用域(必须添加括号),添加伪字符串。
使用println()只有当你完成行的时候。请使用更好的缩进,这通常是不好的。另外,对于循环和条件分支,总是使用括号…你会感谢自己,如果代码更容易阅读,那么代码更容易维护。我会记住这一点,正如我说过的,这确实是我的第一次接触,如前所述,如果我的代码很糟糕(即使在外表上)我很抱歉。你的观点已经被注意到了,谢谢。不要道歉,每个人都必须从某个地方开始。你的帖子实际上比第一篇(甚至第二篇、第三篇等)的很多帖子的格式都要好我写这篇文章只是为了提醒大家,让它变得漂亮是值得的。继续回答好问题!都很好:)我很感谢大家的提醒。谢谢!感谢大家提供有关Eclipse中自动格式化的提示,这就是我正在使用的,而且我不知道如何使用,所以谢谢大家!对于我的变量,你是对的,我应该更具描述性。我们通过讲师的讲座学到的方法是使用I作为“主要变量”这可能不是最好的现实场景,我只是按照讲师在他的例子和讲座中使用的方法来做。你对我的格式设置是正确的,我在SQL中做了很多工作,完全不习惯Java格式(显然,哈哈)。一般的经验法则是,变量的作用域越短,名称越短。例如,您可能永远不会
public static void main(String[] args) {
int list[][][] = new int[3][5][3]; // create rows, column, units
// (buildings) array structure.
int i, j, k; // assign variables for row, column and unit (building).
int ctr = 0; // set counter.
// create array
for (i = 0; i < 3; i++)
for (j = 0; j < 5; j++)
for (k = 0; k < 3; k++)
{
list[i][j][k] = ctr++;
}
for (i = 0; i < 3; i++)
for (j = 0; j < 5; j++)
for (k = 0; k < 3; k++)
// Format array
{
System.out.println(list[i][j][k] + " ");
}
}