例子问题
例子问题1:单元测试
这个函数有趣的
定义如下:
Public int fun(int[] a)
{
一个一个。长度- 1]= a[0];
返回一个[0]+(一个[0]% 2);
}
一个[0]
在执行以下代码段后?Int [] a = {3,6,9,12};
一个[0]=乐趣(a);
12
13
6
9
3.
12
第一部分有趣的
将数组的最后一个位置的值赋给第一个位置。然后,它返回A [0] + (A [0] % 2)
.最后一部分是"1
“如果一个[0]
很奇怪,而且"0
“如果一个[0]
是偶数。自一个[0]= = 12
,为偶数,表达式的计算结果为12 + 0
,这是12
.
例子问题2:测试
x
,y
,z
在执行以下代码后?Int x = 4, y = 3, z;
For (int I = 0;我< 5;我+ +)
{
Z = x + y;
Y = x - Y;
x = z;
}
X == 28, y == 4, z== 4
X == 28, y == 4, z== 28
X == 14, y == 2, z == 14
X == 16, y == 12, z== 16
X == 32, y == 24, z == 32
X == 28, y == 4, z== 28
循环将运行5次。的值x
,y
,z
每次运行后将如下:
I == 0: x == 7, y == 1, z == 7
1: x == 8, y == 6, z == 8
I == 2: x == 14, y == 2, z == 14
I == 3: x == 16, y == 12, z == 16
I == 4 x == 28, y == 4, z == 28
最后,我
将等于5,并且值将不再改变。
例子问题1:测试
If (s.length() <= 5)
返回s5 + s4 + s3 + s2 + s1;
其他的
返回s1 + s2 + mystery(s3) + s4 + s5;
}
的输出是什么
System.out.println(神秘(“异常”));
SEITRMALIONBA
这些答案没有一个是正确的。
ABNOILAMRTIES
SEITILAMRONBA
异常
ABNOILAMRTIES
的.substring ()
方法获取参数中第一个数字的字符,并遍历String直到到达参数中的第二个数字,而不复制第二个数字的字符。
的第一部分神秘()
,字符串s1, s2, s3, s4和s5被生成和填充。如果s中有n = #个字符,s1获取s中的第一个字符,s2获取s中的第二个字符,s3获取第三到n-2个字符,s4获取n-1个字符,s5获取最后一个字符。
让我们看看第二部分神秘()。
If (s.length() <= 5)
返回s5 + s4 + s3 + s2 + s1;
其他的
返回s1 + s2 + mystery(s3) + s4 + s5;
的如果
语句检查s的长度,如果它小于或等于5,它返回一个由s5组成的字符串,后面跟着s4,等等。如果s等于"abcde",那么如果
将求值为true,并返回"edcba"。在递归中,这被称为“基本情况”。
的其他的
语句用于长度大于5个字符的字符串。它返回s1,然后是s2,然后是mystery的结果(s3),然后是s4和s5。它调用自己的事实使得这个递归。
让我们逐步了解这个示例。的理由神秘()
, s为“abnormal”。在第一部分之后,结果如下:
其他的
,因此它返回以下内容:+名词+名词+名词+名词+名词+名词
其他的
,因此它返回以下内容:N + O +神秘(RMALI) + T + I
A + B + N + O +神秘(RMALI) + T + I + E + S
如果
这一次。它返回以下内容:I + l + a + m + r
A + b + n + o + I + l + A + m + r + t + I + e + s
第232个问题:计算机科学
考虑到数组
Int [] arr = {1,2,3,4,5};
其中的值是什么加勒比海盗
在执行以下代码后?
For (int I = 0;我<加勒比海盗。长度- 2;我+ +)
{
Int temp = arr[i];
arr[我]= arr (i + 1);
加勒比海盗(i + 1) = temp;
}
54321
OutOfBoundsException
15432
23451
12345
23451
我们从一个数组开始,加勒比海盗,
大小为5,包含{1,2,3,4,5}。
代码中的循环,
For (int I = 0;我<加勒比海盗。长度- 2;我+ +)
循环遍历数组直到倒数第二个单元格加勒比海盗。长度- 2
倒数第二个单元格的索引,它从第一个单元格开始。
让我们看看循环内部的代码。
Int temp = arr[i];
arr[我]= arr (i + 1);
加勒比海盗(i + 1) = temp;
arr [0] = = 1
arr [1] = = 2
temp = 1
arr [0] = 2
arr [1] = 1
Arr [] == {2,1,3,4,5}
arr [1] = = 1
arr [2] = = 3
temp = 1
arr [1] = 3
arr [2] = 1
Arr [] == {2,3,1,4,5}
当i = 2时
arr [2] = = 1
加勒比海盗[3]= = 4
temp = 1
arr [2] = 4
arr [3] = 1
Arr [] == {2,3,4,1,5}
arr [3] = = 1
arr [4] = = 3
temp = 1
arr [3] = 3
arr [4] = 1
Arr [] == {2,3,4,5,1}
随着循环的进行,它将移动其中的任何值加勒比海盗[0]
一直到数组的末尾。