public static void main(String[] args) {
int[] a = new int[10];
Random s = new Random();
for (int i = 0; i < a.length; i++) {
int s1 = s.nextInt(21) + 15;
a[i] = s1;
for (int j = 0; j < i; j++) {//判断后一个数是否和前一个数是否相等,方法是:用赋的值与前边的每个索引值做比较,
// 如果相同,就将原索引值减1,然后循环外再加1相当于对相同的索引元素重新赋值
if (a[i] == a[j]) {
i -= 1;
continue;
}
}
}
for (int i = 0; i < a.length; i++) {
System.out.println(a[i]);
}
}
/*现在main方法中有一个数组int arr[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5};
要求如下:
1. 定义方法将数组中的0使用1-10之间的随机数替换掉(每一个0都要用一个新的随机数替换),并统计替换了多少个。
2. 调用上面定义的方法,替换掉0并统计结果
3. 对操作后的数组使用任意格式进行遍历,查看结果 */
public class T06 {
public static void main(String[] args) {
int arr[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5};
System.out.println("替换了"+show(arr));
}
public static int show(int [] arr){
int count =0;
for (int i = 0; i <arr.length ; i++) {
Random rd=new Random();
int a=rd.nextInt(11);
if(arr[i]==0){
count++;
arr[i]=a;
for (int j = 0; j < i; j++) {
if(arr[j]==arr[i]){
i--;
break;
}
}}}
for (int k = 0; k <arr.length ; k++) {
System.out.println(arr[k]);
}return count;
}
/*获取数组中元素值为偶数的累加和与元素值为奇数的累加和,并计算他们之间的差值
* 1.定义int getNum(int[] arr)方法,该方法要求完成
* 1.1 获取指定数组arr中元素值为偶数的累加和
* 1.2 获取指定数组arr中元素值为奇数的累加和
* 1.3 返回偶数累加和与奇数累加和之间的差值(大于-1的整数)
* 2.定义main方法:
* 2.1 获取键盘录入的5个int数,并存放到int数组arr中,输入前提示输入的是第几个值
* 2.2 传递数组arr调用getNum(int[] arr)方法,获取返回值,并打印输出*/
import java.util.Scanner;
public class T05 {
public static void main(String[] args) {
int[] arr = new int[5];
System.out.println(getNum(arr));
}
public static int getNum(int arr[]) {
for (int i = 0; i < arr.length; i++) {
Scanner sc = new Scanner(System.in);
System.out.println("这是第" + (i+1) + "号元素");
arr[i] = sc.nextInt();
}
int sum1=0;
int sum2=0;
for (int i = 0; i < arr.length; i++) {
if(arr[i]%2==0){
sum1+=arr[i];
}else {
sum2+=arr[i];
}
}
System.out.println("偶数和为"+sum1);
System.out.println("奇数和为"+sum2);
int a=0;
if(sum1>sum2){
a=sum1-sum2;
}else {
a=sum2-sum1;
}
return a;
}
|
|