数组
package com.lovo.day5;
import java.util.Scanner;
public class ArreyLearn {
public static void main(String[] args) {
// TODO Auto-generated method stub
/*
* 为什么有数组?
* --单一值类型的变量不能存放多个数据,无法满足一些程序设计的需求,这个时候,就有数组了。
* 什么是数组?
* --数组是同一种数据类型的多个元素的容器
*
* 数组的特点:
* --(1)只能是同一种数据类型
* --(2)数组是按连续内存空间存放的
* (3)数组大小一旦确定,不可更改
*
* 数组的使用:
* (1)声明
* 数据类型[] 数组名;(Java常用)
* 数据类型 数组名 [] ;(C语言常用)
* int [] array;//声明一个int类型的数组,数组的名字是array
* --注意:声明后,数组中是没有元素的.
*
* (2) 初始化
* --所谓初始化,就是为数组开辟内存空间,并为数组中的每个元素赋值
* A.动态初始化
* 数组名 = new 数据类型[数组大小];
* array = new int [4];
* 注意:使用new关键字创建数组对象的时候,必须制定数组的大小啊、这样JVM才能够分配空间。
*
* 初始值:
* int =0;
* float=0.0
* double=0.0
* char ---
* boolean = false
* String =null
*
* B.静态初始化
* 给出初始值,不指定长度
* int[] arr = new int[]{12,56,65,9,2332}
*
* 数组长度:数组名.length
* 数组的访问:数组的每个元素要用,点组名[下标]的方式进行访。。
* 数组的下标从0开始。最小为0.最大目标是数组长度-1.
* 下标(索引):index
* 如果访问时,数组下标不在最大最小范围内,编译器(语法检查)不会报错,
* 运行时会报ArrayIndexOutOfBoundsException(数组下标越界异常)。
*
* 遍历:
* 对数组元素从头到尾操作一次,这个动作叫"遍历"
*
*/
//输入三个整数放入一个数组,然后再遍历输出
// Scanner scan =new Scanner(System.in);
// int [] nums = new int [3];
// for(int i =0;i<3;i++) {
// System.out.print("请输入第"+(i+1)+"个数:");
// int num =scan.nextInt();
// nums[i]= num;
// }
// for(int i =0;i<nums.length;i++) {
// System.out.println(nums[i]);
// }
//一个存放了6个学生成绩的数组,要求打印出学生的总分,以及每个人和平均分的差值
// int[]score =new int[] {92,83,15,76,45,38};
// int sum=0;
// for(int i =0;i<6;i++) {
// sum += score[i];
// }
// System.out.println("六个学生总分为"+sum);
// int average =sum/score.length;
// int [] d =new int [6];
// for(int i =0;i<6;i++) {
// d[i] =score[i]-average;
// System.out.println("第"+(i+1)+"个学生和平均分差值分别是:"+d[i]);
// }
//请输入任意一个字符串,把其中的大写字母变小写,小写字母变大写,然后输出
// System.out.print("请输入字符串:");
// String str = new Scanner(System.in).nextLine();
// char[] charArr = str.toCharArray();//toCharArray()可以将字符串转换为字符数组
// for(int i=0;i<charArr.length;i++) {
// if(charArr[i]>='A'&&charArr[i]<='Z') {//大写转小写
// charArr[i]+=32;
// }
// else if(charArr[i]>='a'&&charArr[i]<='z') {//小写转大写
// charArr[i]-=32;
// }
// System.out.print(charArr[i]);
// }
//查找练习,已知一个数组,将其中最大的数输出
// int[] numArr= {23,54,75,5,8,79};
// for(int i=0;i<numArr.length-1;i++) {
// for(int j=i+1;j<numArr.length;j++) {
// if(numArr[i]<numArr[j]) {
// int t=numArr[i];
// numArr[i]=numArr[j];
// numArr[j]=t;
// }
// }
// }
// System.out.println("最大的数是:"+numArr[0]);
// int[] numArr= {23,54,75,65,1,31};
// int max=numArr[0];
// for(int i=1;i<numArr.length;i++) {
// if(numArr[i]>max) {
// max=numArr[i];
// }
// }
// System.out.println(max);
//找人:输入要查找的人,如果找到了就打印姓名和下标,没找到就打印查无此人
// String[] nameArr = {"张三","李四","王麻子"};
// System.out.print("请输入要查找的人:");
// String name = new Scanner(System.in).nextLine();
// int index = -2;
// for(int i =0;i<nameArr.length;i++) {
// if(name.equals(nameArr[i])) {
// index=i;
// break;
// }
// }
// if(index>0) {
// System.out.println("找到"+name+"下标为"+index);
// }
// else {
// System.out.println("查无此人");
// }
//显示成绩最好的学生的姓名
// String[] nameArr = {"李现","王思聪","鹿晗","蔡徐坤","吴亦凡"};
// int [] scoreArr = {88,9,99,66,34,35};
// int max =scoreArr[0];
// int index = 0;
// for(int i =1;i<scoreArr.length;i++) {
// if(scoreArr[i]>max) {
// max=scoreArr[i];
// index=i;
// }
// }
// System.out.println("成绩最好的学生姓名是:"+nameArr[index]);
//增加元素--
// System.out.print("请输入一个整数:");
// int n =new Scanner(System.in).nextInt();
// int[] arr = new int[] {12,53,99,45,55};
// int[] nums = new int[arr.length+1];
// for(int i =0;i<nums.length;i++) {
//
// if(i==arr.length) {
// nums[i]=n;
// break;
// }
// nums[i]=arr[i];
// }
//
// for(int i =0;i<nums.length;i++) {
// System.out.println(nums[i]);
// }
//增加元素--
// System.out.print("请输入一个整数:");
// int n =new Scanner(System.in).nextInt();
// int[] arr = new int[] {12,53,99,45,55};
// int[] nums = new int[arr.length+1];
// for(int i =0;i<arr.length;i++) {
// nums[i]=arr[i];
// }
// nums[arr.length]=n;
// arr=nums;
// for(int i =0;i<arr.length;i++) {
// System.out.println(arr[i]);
// }
//删除元素
int[] arr = new int[] {12,53,99,45,55};
int[] newArr= new int[arr.length-1];
System.out.print("请输入要删除的数字:");
int n =new Scanner(System.in).nextInt();
for(int i =0,j=0;i<arr.length;i++) {
if(arr[i]!=n) {
newArr[j]=arr[i];
j++;
}
}
arr=newArr;
for(int i=0;i<arr.length;i++) {
System.out.println(arr[i]);
}
}
}