1.在控制台打印一个菱形。
package lession0711B;
public class TestB1 {
public static void main(String[] args) {
int n = 7;
for (int i = 1; i <= n; i++) {// 控制输出几行
// 1.空格
for (int j = 1; j <= (i - n / 2 - 1 > 0 ? i - n / 2 - 1 : n / 2 + 1 - i); j++) {
System.out.print(" ");
}
// 2.星号
for (int k = 1; k <= n - 2 * (i - n / 2 - 1 > 0 ? i - n / 2 - 1 : n / 2 + 1 - i); k++) {
System.out.print("*");
}
System.out.println();
}
}
}
2.写一段程序,取两个数组的交集。
package lession0711B;
import java.util.Arrays;
public class Test2 {
public static void main(String[] args) {
int[] array1 = new int[5];
int[] array2 = new int[5];
int[] array3 = new int[5];
for (int i = 0; i < 5; i++) {// 给数组A随机赋值5个
array1[i] = (int) (Math.random() * 10);
}
for (int i = 0; i < 5; i++) {// 给数组B随机赋值5个
array2[i] = (int) (Math.random() * 10);
}
int cont = 0;
for (int i = 0; i < 5; i++) {// 把A、B数组中相同的值赋值给数组C
for (int j = 0; j < 5; j++) {
if (array1[i] == array2[j]) {
array3[cont] = array1[i];
cont++;
break;
}
}
}
int a = 1;
if (array3[4] == 0) {
for (int i = 0; i < 4; i++) {// 判断数组A中是否有0
if (array1[i] == 0) {
break;
} else if (i == 3) {
a -= 1;
}
}
for (int i = 0; i < 4; i++) {// 判断数组B中是否有0
if (array2[i] == 0) {
break;
} else if (i == 3 && a == 1) {
a -= 1;
}
}
}
for (int i = 0; i < 4; i++) {// 判断A、B数组中相同值的个数
for (int j = i + 1; j < 4; j++)
if (array3[i] == array3[j]) {
break;
} else if (j == 3) {
a++;
}
}
int[] array4 = new int[a];
int m = 0;
for (int i = 0; i < 4; i++) {// 把array3数组中的值赋给数组array4
for (int j = i + 1; j < 4; j++)
if (array3[i] == array3[j]) {
break;
} else if (j == 3) {
array4[m] = array3[i];
m++;
}
}
// System.out.println(a);
System.out.println("数组A:" + Arrays.toString(array1));
System.out.println("数组B:" + Arrays.toString(array2));
// System.out.println("数组A和B的交集:"+Arrays.toString(array3));
if (a != 0) {
System.out.println("数组A和B的交集:" + Arrays.toString(array4));
} else {
System.out.println("两个数组没有交集!");
}
}
}
集合要去重并要数组中多余的0: