AP计算机科学A:常量声明

学习AP计算机科学A的概念,示例问题和解释

大学导师应用商店 大学导师安卓商店

例子问题

问题1:常数声明

下面哪个代码示例充分使用了常量?

可能的答案:

final String s = "Hello, "

int intVal中;

//在此代码中读取变量intVal ....摘录……

if(intVal < 0) {

s += "世界!";

} else if(intVal == 0) {

s +=“人!”;

} else {

s +=“伙计们!”;

}

最终int行;

int intVal中;

//在此代码中读取变量intVal ....摘录……

rows = intVal;

For (int I = 0;I < rows;我+ +){

System.out.println(我);

}

For (final int I = 0, rows = 5;I < rows;我+ +){

System.out.println(我);

}

Const int行= 4;

For (int I = 0;I < rows;我+ +){

System.out.println(我);

}

最终int行= 4;

For (int I = 0,l = rows;I < l;我+ +){

行+= 2;

}

正确答案:

最终int行;

int intVal中;

//在此代码中读取变量intVal ....摘录……

rows = intVal;

For (int I = 0;I < rows;我+ +){

System.out.println(我);

}

解释

记住这是一个常数变量不能一旦被分配,将被更改。通常,您会在声明的同一行立即赋值变量。但是,如果您要创建常量并等待赋值,那么也会在语法上找到它。因此,正确答案没有问题,尽管如果你不知道这一点,一开始可能会出现问题。现在,请记住声明常量的方法是使用关键字“final”。(关键字“const”在c++等其他语言中也有效。)所有不正确的答案(除了使用“const”的答案)都会在定义常量之后改变它。

问题1:编程结构

在下面的代码块中,下面哪几行包含错误?

最后int I = 20, j, k;

Int,m=50,n = 2;

J = n + m;

L = m * I + j;

For (int a = 0;A < m;+ +) {

L += L;

}

M = 20 + j + n * I + M;

J = m + i;

K = 50 + 20 * j;

可能的答案:

J = m + i;

K = 50 + 20 * j;

L = m * I + j;

For (int a = 0;A < m;+ +)

L += L;

正确答案:

J = m + i;

解释

这条线

J = m + i;

有一个错误,因为它包含对常量(final)变量的重新赋值。允许在声明行以外的行上赋值常量。但是,一旦这样做了,就不能重新赋值了。的变量j被赋值为:

J = n + m;

因此,上面的直线(j = m + i;)表示a再保险-assignment,从而导致错误。

大学导师提供的学习工具