首页 > 代码库 > 数组自我心得
数组自我心得
请输入班级的5个学生的名字(意思是让你把五个学生的名字输入到数组之中
其中要用到数组的声明和循环以及回去字符串的函数)
String [] names = new String[5];//声明一个长度为5的函数
int i=0;//声明一个变量i
for(i=0;i<nums.length;i++){
System.out.println("请输入第"+(i+1)+"个学生的名字")
nums[i]=input.next//將顾客输入的字符串赋值给相对应序号的值
}
for(i=0;i<nums.length;i++){
System.out.pring(nums[i]+‘\t‘);//建立一个循环,长度为小于数组长度,每回合输入内容并且换行
}
System.out.println();
//数组的查找
//查找数组是否有你输入的名字,如果有输出没有则显示没有
这道题靠的是將数组内的东西进行对比,有的话就输出没有的话就显示没有。那么进行对比
就要用上for循环,有没有的话需要加上if判断。那么至少得有这俩个方式。
System.out.pringln("输入您要输入的查找的学生的名字");
String findName =input.next();//获得顾客所要查找的值;
boolean isFind =false; //设置一个真假的标示
for(int i=0;i<nums.length;i++){//建立一个数组的循环
if(findName.equals(names[i])){//这句话是將顾客输入的字符串和第i项的值进行对比
isFind =1;
break;
}}
if(isFind>0){
System.out.println("找到了");
}else
System.out.println("没有找到");
}
题为输入一个数字,在数组中查找,如果找到了,输出这个数字在数组中的下标没找到则显示没有找到
根据题意,我们知道查找,需要一个循环,是否找到需要一个判断,那么这题至少必须要有1个
判断还有一个循环。
int [] nums={25,54,34,345,5,3};
int findIndex =-1;//这里给-1是为了好区分
System.out.println("请输入你所有查找的数字")
int fid =input.nextInt();//新建一个变量fid来接受顾客输入的数字
for(int i=0;i<nums.length;i++){//建立一个for循环用来查找所需要的数
if(find ==nums[i]){//进行一个if判断,如果第i项的值等于顾客所输入的值的话
findIndex=i;//將数字i赋值给变量findindex將它记录
break;//这个循环是为了找到顾客输入的数是否找到,既然找到了就没有循环的意义了;
}
if(findIndex>0){//如果找到了的话就將它记录为找到了
System.out.println("意义为找到了")
}else
System.out.println("没有找到")
}
找到之后删除该位置的数据,然后数组长度-1形成新的数组;
需要注意根据题意,要求我们找到该数组下的数字代替它,然后形成一个新的数组,我们需要至少俩个循环
用以存储,声明俩个新的的数组考的是删除数组数据和形成新的数组
int [] nums ={15,54,35,32};//我们先定义了一个姓的数组
int findIndex =-1;//同理这个-1跟上面的一样是用以记录区分
System.out.println("请输入你要查找的数组:");//提示用户输入
int finf = input.nextInt();//获取用户的输入
for(int i=0;i<nums.length;i++){//创建一个循环先找出所在的数的位置
if(nums[i]==find){//相比较是否相等
findIndex=i;//將值进行记录
break;//结束循环
}
}
if(findIndex>0)//如果顾客输入的值是有的话
System.out.println("找到了,在数组下标的第"+findIndex+"项中")
//找到了位置,咱们就要开始创建数组了
nums[findIdex]=nums[nums.length-1];//因为要求的是删除掉选中位置的数组并且将新的数组
减1
int [] newNums =new int[nums.length-1];//创建一个新的数组newNums,并且将它的长度赋值为
nums.length-1
for(int i=0;i<newNums.length;i++){//建立一个遍历新数组的循环
nuwNums[i]=nums[i];//將老数组里面的值全部都赋值给新的数组
}
for(int i=0;i<newNums.length;i++){
System.out.println(newNums[i]);
}else{
System.out.println("没有找到");
}
删除,并且保持顺序
int [] nums ={23,35,31,3};
int findIndex =-1;
System.out.println("请输入您要查找的数字");
int find =inpur.nextInt();
for(int i=0;i<nums.length;i++){
if(find==nums[i]){
findIndex =i;
break;
}
}
if(findIndex>=0){
System.out.printlb("")
int [] newNums =new int[nums.length-1];//新数组为旧数组减一
for(int i=findIndex;i<nums.length-1;i++)
nums[i]=nums[i+1];//把从要变的值开始用旧数组的后面一项往前挪了一位將这个数挤掉了
}
for(int i=0;i<newNums.length;i++){
newNums[i]=nums[i];//將旧的数组里面的值全部赋值到新的数组里
}
for(int i=0; i<newNums.length; i++
System.out.println(newNums[i]);//遍历输出
String[] names =new String[5];设定一个长度为5的数组
names[0]="sad";
names[1]="sads";
names[2]="ase";
for(int i=0;i<names.length;i++){
if(names[i]==null){
names[i]="jackson";
break;
}
}
for(int i=0;i<names.length;i++){
Sysrem.out.rintln(newNums[i]);
数组自我心得