- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
.length 在这里有什么用?在下面的代码中,什么可以用 .length 代替?我只是想更好地理解代码,明天考试! W00t!
public class twoDimension{
public static void main(String[] args) {
int[][] a2 = new int[10][5];
for (int i=0; i<a2.length; i++) {
for (int j=0; j<a2[i].length; j++) {
a2[i][j] = i;
System.out.print(" " + a2[i][j]);
}
System.out.println("");
}
}
}
最佳答案
您已经声明了一个 int 类型数组的数组并对其进行了初始化。
第一个方括号内的 10 表示您将为该行存储 10 个值,并且是数组“n”的大小,其中 n=10。行长为 10。
5 在第二个方括号内表示您将为该列存储 5 个值,并且是数组“n”的大小,其中 n=5。列长为 5。
在这种情况下,您有一个包含 10 个位置的数组
streetX[house_1]
streetX[house_2]
streetX[house_3]
streetX[house_4]
streetX[house_5]
streetX[house_6]
streetX[house_7]
streetX[house_8]
streetX[house_9]
streetX[house_10]
每个位置里面还有另外5个不同的位置
{house_i[room_number1], house_i[room_number2], house_i[room_number3], house_i[room_number4], house_i[room_number5]}
我可以代表 1 到 10 中的任何一个
可以把它想象成一条街上的 10 栋房子。每栋房子有5个房间。每栋房子都会有一个独特的地址,以区别于街上的其他房子。以同样的方式,一所房子的每个房间都将与其他房间不同。您现在可以在每个房间存放不同的东西。
这条街上有一排房子,每栋房子都有一组房间。
因此,您将有:您可以将 a2 视为 streetX,即 a2 = streetX
streetX 有 10 个房子,因此 a2 中有 10 个位置。 a2的大小为10表示长度为10,因此a2.length = 10
注意:当您引用数组值时,索引从 0“零”到“n-1”开始。数组索引始终是一个整数,它可以是 int、short、byte 或 char。
house_i(其中 i 的范围从 1 到 10)但我们通常从 0 开始计算索引。我们将有索引 0 到 9。house_i 类似于 a2[i]。有 5 个房间,因此有 5 个位置。任意 a2[i](即任意房屋 a2[0]、a2[1]、a2[2]、a2[3] 或 a2[4])的大小为 5,表示长度为 5。因此,a2 [i].length = 5
a2[house1][room1] a2[house1][room2] a2[house1][room3] a2[house1][room4] a2[house1][room5]
a2[house2][room1] a2[house2][room2] a2[house2][room3] a2[house2][room4] a2[house2][room5]
a2[house3][room1] a2[house3][room2] a2[house3][room3] a2[house3][room4] a2[house3][room5]
a2[house4][room1] a2[house4][room2] a2[house4][room3] a2[house4][room4] a2[house4][room5]
a2[house5][room1] a2[house5][room2] a2[house5][room3] a2[house5][room4] a2[house5][room5]
a2[house6][room1] a2[house6][room2] a2[house6][room3] a2[house6][room4] a2[house6][room5]
a2[house7][room1] a2[house7][room2] a2[house7][room3] a2[house7][room4] a2[house7][room5]
a2[house8][room1] a2[house8][room2] a2[house8][room3] a2[house8][room4] a2[house8][room5]
a2[house9][room1] a2[house9][room2] a2[house9][room3] a2[house9][room4] a2[house9][room5]
a2[house10][room1] a2[house10][room2] a2[house10][room3] a2[house10][room4] a2[house10[room5]
注意:当您引用数组值时,索引从 0“零”到“n-1”开始。数组索引始终是一个整数,它可以是 int、short、byte 或 char。
如果 n = 10,我们将有 0 ... 9
如果 n = 5,我们将有 0 ... 4
例如,streetX[house1][room1] = a2[house1[room1] 将变为 a2[0][0]
最终,您将拥有:
a2[0][0] a2[0][1] a2[0][2] a2[0][3] a2[0][4]
a2[1][0] a2[1][1] a2[1][2] a2[1][3] a2[1][4]
a2[2][0] a2[2][1] a2[2][2] a2[2][3] a2[2][4]
a2[3][0] a2[3][1] a2[3][2] a2[3][3] a2[3][4]
a2[4][0] a2[4][1] a2[4][2] a2[4][3] a2[4][4]
a2[5][0] a2[5][1] a2[5][2] a2[5][3] a2[5][4]
a2[6][0] a2[6][1] a2[6][2] a2[6][3] a2[6][4]
a2[7][0] a2[7][1] a2[7][2] a2[7][3] a2[7][4]
a2[8][0] a2[8][1] a2[8][2] a2[8][3] a2[8][4]
a2[9][0] a2[9][1] a2[9][2] a2[9][3] a2[9][4]
外层的 for... 循环将重复 10 次,记住 a2.length = 10 而内层的 for ... 循环重复 5 次,记住 a2[].length = 5
你初始化了 a2[i][j] = i,因此对于每个内部循环,你将拥有 i(房子)的索引,将存储为房子每个房间的值或事物的数量。
因此,当您执行该程序时,您将得到如下输出或结果。
计算行数和列数,观察每一行的值是否相同。
0 0 0 0 0
1 1 1 1 1
2 2 2 2 2
3 3 3 3 3
4 4 4 4 4
5 5 5 5 5
6 6 6 6 6
7 7 7 7 7
8 8 8 8 8
9 9 9 9 9
对于数组,您可以使用 [array_object_name].length 或以数字指定大小。例如。 a2.length 或 10,或 a2[i].length 或示例程序中的 5。其中 i 等于 0、1、2、3、4 中的任何一个。请注意 .length 中的长度是一个静态变量(您可以从此处阅读更多关于静态变量的信息 http://download.oracle.com/javase/tutorial/java/nutsandbolts/variables.html 并了解静态方法和静态类)
总结一下,长度就是一个数组的大小
您可以从此处了解有关数组的更多信息 - http://javapapers.com/core-java/java-array/
关于java - 在二维数组中识别 .length,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7284666/
我找到了以下代码片段: length = length and length or len(string) 在我看来,这应该等同于: length = length or len(string) 我能
当我使用 numpy.shape() 检查数组的形状时,我有时会得到 (length,1) 有时会得到 (length,)。看起来区别在于列向量与行向量......但它似乎并没有改变数组本身的任何内容
我正在学习 Java,有一个简单的问题。 在设置类的示例中,我看到了这一点: length >= 0 ? length : length * -1 这是什么意思? 谢谢。 最佳答案 这是一种骇人听闻的
我在阅读有关在 Ruby 中重新定义方法有多么容易的文章时遇到了以下问题: class Array alias :old_length :length def length old_l
例如在下面的代码中a和b和c是相等的。 EditText editText; editText = (EditText) findViewById(R.id.edttxt); editText.set
在昨天教授我的 JavaScript 类(class)时,我和我的学生遇到了一些有趣的功能,我认为这些功能可能值得在一个问题和我得出的答案中捕捉到。 在 Chrome 的 JS 控制台中输入 Arra
这个问题在这里已经有了答案: How can I get the size of an array, a Collection, or a String in Java? (3 个回答) 3年前关闭。
这个问题在这里已经有了答案: length and length() in Java (8 个答案) 关闭 6 年前。 我注意到在计算数组的长度时,你会这样写: arrayone.length; 但
console.log(this.slides.length()); 打印 Cannot read property 'length' of undefined.在 setTimeout 为 100
在搜索stackoverflow问题时,我发现了此链接: Error in file.download when downloading custom file。 但是,我的情况有些不同(我认为):
这个问题已经有答案了: Why does R use partial matching? (1 个回答) 已关闭 8 年前。 大家。我刚刚开始使用 swirl 学习 R 编程。 我刚刚了解到seq 。
这个问题已经有答案了: Why does R use partial matching? (1 个回答) 已关闭 8 年前。 大家。我刚刚开始使用 swirl 学习 R 编程。 我刚刚了解到seq 。
这个问题已经有答案了: How can I get the size of an array, a Collection, or a String in Java? (3 个回答) 已关闭 9 年前。
我有一个大数组,其中包含所有类型( bool 值,数组,null,...),并且我正在尝试访问它们的属性arr[i].length,但有些其中显然没有长度。 我不介意那些缺少长度的人是否返回未定义(我
我在对象的属性中有一些文本。我正在测试对象的属性中是否有要显示的文本;如果没有,那么我显示“-”而不是空白。看起来没有什么区别: if (MyObject.SomeText && MyObject.S
这个问题在这里已经有了答案: 关闭 10 年前。 Possible Duplicate: Why is String.length() a method? Java - Array's length
这个问题在这里已经有了答案: obj.length === +obj.length in javascript (4 个答案) 关闭 9 年前。 我一直在读underscore.js源代码并在 _.
#include using std::cout; using std::cin; using std::string; int main(){ cout > name; cout
我正在细读 underscore.js annotated source当我遇到这个时: if (obj.length === +obj.length) {...} 我现在从this stackove
我正在查看 dotnet 运行时中的一些代码,我注意到不是这样写的: if (args.Length > 0) 他们使用这个: if (args is { Length: > 0}) 你知道用第二种方
我是一名优秀的程序员,十分优秀!