java基础(5)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java基础(5),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2744字,纯文字阅读大概需要4分钟。
内容图文
一、 什么是数组及其作用?
定义:具有相同数据类型的一个集合
作用:存储连续的具有相同类型的数据
二、 java中如何声明和定义数组
2.1 声明和定义的语法:
数据类型[ ] 数组名;( int[ ] nums ; ) 或 数据类型 数组名[]; ( int nums[ ] ;)
2.2 为数组分配空间
数组名=new 数据类型[数组的长度]; ( nums=new int[5] ;)
2.3 声明数组,同时分配空间
数据类型[]数组名= new 数据类型[数组的长度];
数据类型 数组名[]=new 数据类型[数组的长度];
( int[ ] nums=new int[5] ;) ( int nums[ ]=new int[5] ;)
三、 如何读取数组中的元素— 通过下标(索引)来获取
下标(索引)是从0开始,最大下标为 数组长度-1
下标越界:ArrayIndexOutOfBoundsException
int 类型的数组,每个元素的默认值为 0
String 类型的数组,每个元素的默认值为 null
3.1 获取单个元素的值
数据类型 变量名=数组名[下标];
3.2 循环读取数组中的每个元素
数组的长度:数组名.length 属性自动计算
for(int i=0;i<数组名.length ;i++){
数组名[i];
}
四。如何给数组中的元素赋值
方式1(赋予数组固定值):
声明数组,分配空间,并赋值
( 数组的长度由值的个数决定 )
数据类型 数组名[]=new 数据类型[]{值1,值2…值n};
或
数据类型 []数组名={值1,值2…值n};
说明: [] 中括号可以放在数组名前面或后面
方式2:动态的给数组赋值(从键盘中输入)
Scanner input = new Scanner(System.in);
for(int i=0;i<数组名.length ; i++){
String类型的数组名[i]= input.next ();
int类型的数组名[i]= input.nextInt ();
double类型的数组[i]=input.nextDouble();
}
五、数组排序问题
使用Arrays. sort(数组名);
实现对数组中的元素按升序或降序输出
六、求最大值或最小值
实现思路:将数组中的第1个元素的值,假想成最大(小)值【赋值】;然后数组中的每个元素和假想的这个最大(小)数进行比较,如果数组中的某个元素的值,比最大(小)数要大(小),将该元素的值,保存到假想的最大(小)值对应的变量中
public class shuzu { public void D(int []num){ int ha []=newint[10]; for(int j=0;j<ha.length;j++){ int index=(int)(Math.random()*100); ha[j]=index; System.out.print(ha[j]+" "); } int max=ha[0]; int min=ha[0]; for(int i=1;i<ha.length;i++){ if(max<ha[i]){ max=ha[i]; } if(min>ha[i]){ min=ha[i]; } } System.out.println("\n"+"最大值为:"+max); System.out.println("最小值为:"+min); } }
八、求数组中最值的位置
1、 在循环的外面,定义变量k(赋值为0),用于保存最值的下标
2、 在循环中,比较找出最值的同时,给变量k赋值
public static void main(String [] args){ Scanner input=new Scanner(System.in); char [] ha={‘a‘,‘c‘,‘u‘,‘b‘,‘e‘,‘p‘,‘f‘,‘z‘}; System.out.print("原字符序列:"); for (int i=0;i<ha.length;i++){ System.out.print(ha[i]+" "); } Arrays.sort(ha);//对数组进行降序 System.out.print("\n升序排列后:"); for (int i=0;i<ha.length;i++){ System.out.print(ha[i]+" "); } char he[]=newchar[9];//创建一个新数组,进行储存数据for (int i=0;i<ha.length;i++){ he[i]=ha[i]; } System.out.println("\n插入的字符是:");//输入新数据char a=input.next().charAt(0); int index=he.length-1;//保存新数据插入的位置for (int i=0;i<he.length;i++){ if(a<he[i]){//对数字进行判断 index=i;//找到新元素的下标位置break; } } for (int s=he.length-2;s>=index;s--){ he[s+1]=he[s]; //将元素从后移动 } he[index]=a;//将输入的值赋到数组中 System.out.println("\n插入的下标是:"+index); for (int k=0;k<he.length;k++){ System.out.print(he[k]+" "); } }
八、斐波那契数列
1,1,2,3,5,8,13,21,34……求第20个数字的值?(使用循环)
规律:第i个 + 第(i+1)个 = 第(i+2)个
步骤1:定义数组,数组长度为20
int []nums=new int[20];
步骤2:根据规律,获取第0个和第1个数的初值
nums[0]=1;
nums[1]=1;
步骤3:通过循环,给数组中的所有元素赋值
for ( int i=0;i<nums.length-2;i++){
nums [i+2]=nums[i]+nums[i+1];
}
或
for(int i=2;i<nums.length;i++){
nums[i]=nums[i-2]+nums[i-1];
}
步骤4:输出nums[19]的值
原文:http://www.cnblogs.com/22joke/p/6953120.html
内容总结
以上是互联网集市为您收集整理的java基础(5)全部内容,希望文章能够帮你解决java基础(5)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。