package com.test.bs;
import java.lang.reflect.Array;
import java.util.Arrays;
import java.util.Random;
import java.util.Scanner;
public class Test_Arrays {
public static void main(String[] args) {
// TODO Auto-generated method stub
// int a[]=new int[5];
// int[] b=new int[5];
// 遍历一维数组
// int c[]= {3,-2,5,-6};
// for(int i:c){
// System.out.print(i+" ");
// }
// for (int i = 0; i < c.length; i++) {
// System.out.print(c[i]+",");
// }
// 遍历二维数组
// int[][] a= {{11,12,13,14},
// {21,22,23,24},
// {31,32,33,34}};
// for (int i = 0; i < a.length; i++) {
// for (int j = 0; j < a[i].length; j++) {
// System.out.print(a[i][j]+",");
// }
// System.out.println(" ");
// }
// for(int[]k:a) {
// for(int t:k) {
// System.out.print(t+",");
// }
// System.out.println(" ");
// }
// 编写一个长度为5的整型数组,每个元素赋值为0-10的随机整数,遍历该数组,输出每个元素。
// int[] a=new int[5];
// Random r=new Random();
// for (int i = 0; i < a.length; i++) {
// a[i]=r.nextInt(11);
// System.out.println(a[i]);
// }
// 1、已知两个一维数组:{1,2,3,4,5}和{6,7,8},将这两个一维数组合并成一个一维数组{1,2,3,4,5,6,7,8}。
// int[] a= {1,2,3,4,5};
// int[] b= {6,7,8};
// int[] c= new int[a.length+b.length];
// for (int i = 0; i < c.length; i++) {
// if(i<a.length) {
// c[i]=a[i];
// }else {
// c[i]=b[i-a.length];
// }
// }
// for(int k:c) {
// System.out.println(k);
// }
// 从键盘输入班级学员成绩,计算全班学员的平均分;找出全班学员的最高分;
// Scanner sc = new Scanner(System.in);
// System.out.println("请输入五个成绩");
// int[] a=new int[5];
// int sum=0;
// double pingjun=0;
// int max=0;
// int min=1000;
// for (int i = 0; i < a.length; i++) {
// a[i]=sc.nextInt();
// sum+=a[i];
// if(a[i]>max){
// max=a[i];
// }
// if(a[i]<min) {
// min=a[i];
// }
// }
// pingjun=(double)sum/a.length;
// System.out.println("总成绩"+sum);
// System.out.println("平均"+pingjun);
// System.out.println("最大"+max);
// System.out.println("最小"+min);
// 生成一个4*6的二维整型数组,使用随机数填充,遍历输出该数组的所有值,并且找出最大值。
// int max=0;
// int[][] a=new int[4][6];
// Random r=new Random();
// for (int i = 0; i < a.length; i++) {
// for (int j = 0; j < a[i].length; j++) {
// a[i][j]=r.nextInt(100);
// }
// }
//
// for(int[] k:a) {
// for(int t:k) {
// if(t>max) {
// max=t;
// }
// System.out.print(t+",");
// }
// System.out.println();
// }
// System.out.println("最大"+max);
// 冒泡排序
// int[] a={3,1,8,2,0,22,47,8,2,11};
// int temp=0;
// for (int i = 0; i < a.length; i++) {
// for (int j = 0; j < a.length-1-i; j++) {
// if(a[j]>a[j+1]) {
// temp=a[j];
// a[j]=a[j+1];
// a[j+1]=temp;
// }
// }
// }
// for(int k:a) {
// System.out.print(k+",");
// }
//
// 将一个字符数组的值(neusofteducation)拷贝到另一个字符数组中。(知识点:数组复制)
// String[] a= {"n","e","u","s","o","f","t","e","d","u","c","a","t","i","o","n"};
// String[] b=new String[a.length];
// for (int i = 0; i < a.length; i++) {
// b[i]=a[i];
// System.out.print(b[i]);
// }
// 给定一个有9个整数(1,6,2,3,9,4,5,7,8)的数组,先排序,然后输出排序后的数组的值。(知识点:Arrays.sort排序、冒泡排序)
// int[] a= {1,6,2,3,9,4,5,7,8};
// int temp=0;
// for (int i = 0; i < a.length; i++) {
// for (int j = 0; j < a.length-1-i; j++) {
// if(a[j]>a[j+1]) {
// temp=a[j];
// a[j]=a[j+1];
// a[j+1]=temp;
// }
// }
// }
// Arrays.sort(a);
// for(int k:a) {
// System.out.print(k+",");
// }
// 在一个有8个整数(18,25,7,36,13,2,89,63)的数组中找出其中最大的数及其下标。(知识点:数组遍历、数组元素访问) [必做题]
// int[] a= {18,25,7,36,13,2,89,63};
// int max=0;
// int mxb=0;
// for (int i = 0; i < a.length; i++) {
// if(a[i]>max) {
// max=a[i];
// mxb=i;
// }
// }
// System.out.println("最大: "+max+",下标:"+mxb);
// 将一个数组中的元素逆序存放
// int[] a= {1,2,3,4,5};
//方法一
// int[] b=new int[a.length];
// for (int i = 0; i < a.length; i++) {
// b[i]=a[a.length-i-1];
// }
// for(int k:b) {
// System.out.println(k);
// }
//方法二
// int temp=0;
// for (int i = 0; i < a.length/2; i++) {
// temp=a[i];
// a[i]=a[a.length-i-1];
// a[a.length-i-1]=temp;
// }
// for(int k:a) {
// System.out.println(k);
// }
// 将一个数组中的重复元素保留一个其他的清零。
int[] a= {2,3,4,2,4,6,8,8,1,7};
for (int i = 0; i < a.length; i++) {
if(i>0) {
for (int j = 0; j < i; j++) {
if(a[i]==a[j]) {
a[i]=0;
break;
}
}
}
}
for(int k:a) {
System.out.println(k);
}
}
}