思考Java练习
思考Java第8章
词汇
数组
元素
索引
引用
别名
遍历
搜索
减少
累加器
确定性的
非确定性的
伪随机
直方图
增强for循环
public class ex8_2 {
//パラメータは配列a
//配列の数分ループを回す
//kiwiとかけていきます。
//Kiwiを出力します。
public static int banana(int[] a) {
int kiwi = 1;
int i = 0;
while (i < a.length) {
kiwi = kiwi * a[i];
i++;
}
return kiwi;
}
// 配列aをループ分回す
// 配列aのi番目がgrapeだった時 iを返す
// そうでなかった場合 -1を返す。
public static int grapefruit(int[] a, int grape) {
for (int i = 0; i < a.length; i++) {if (a[i] == grape)
{
return i;
}
}
return -1;
}
// 配列aをループ分回す
// 配列aのi番目がappleだった時 加算する。
// 最終的にpearを返す。
public static int pineapple(int[] a, int apple) {
int pear = 0;
for (int pine: a) {
if (pine == apple) {
pear++;
}
}
return pear;
}
ex8_4
public static int indexOfMax(int[] a) {
int l = 0;
for (int i = a.length - 1; i > 0; i--) {
if (a[l] < a[i]) {
l = i;
}
}
return l;
}
ex8_6
public static boolean areFactors(int n, int[] array) {
boolean r = false;
for (int i = 0; i < array.length - 1; i++) {
if (array[i] == n) {
r = true;
return true;
}else{
r = false;
}
}
return r;
}
ex8_8
public static int maxInRange(int[] integers, int lowIndex, int highIndex){
if (lowIndex == highIndex){
return integers[lowIndex];
}
int mid = (lowIndex + highIndex) / 2;
return
public static int max(int[] integers){
return maxRange(integers, 0, integers.length-1);
}
评论
也许最好在其他教材上进行流畅书写的练习。
我思考了很久。我抄写了第8题的答案。希望不要再涉及递归。