java 基础5

一、        什么是数组及其作用?

    定义:具有相同数据类型的一个集合

    作用:存储连续的具有相同类型的数据

二、        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 []=new int[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[]=new char[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]的值

转载于:https://www.cnblogs.com/qq7337531/p/6986584.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/258456.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

TFS(Team Foundation Server)介绍和入门

在本文的两个部分中&#xff0c;我将介绍Team Foundation Server的一些核心特征&#xff0c;重点介绍在本产品的日常应用中是怎样将这些特性结合在一起使用的。 作为一名软件开发者&#xff0c;在我的职业生涯中&#xff0c;我常常会用到支持软件开发过程的大量开发工具&#x…

[Hadoop] - 自定义Mapreduce InputFormatOutputFormat

在MR程序的开发过程中&#xff0c;经常会遇到输入数据不是HDFS或者数据输出目的地不是HDFS的&#xff0c;MapReduce的设计已经考虑到这种情况&#xff0c;它为我们提供了两个组建&#xff0c;只需要我们自定义适合的InputFormat和OutputFormat&#xff0c;就可以完成这个需求&a…

PS 色调——老照片效果

这就是通过调色使照片显得发黄。 R_new0.393*R0.769*G0.189*B; G_new0.349*R0.686*G0.168*B; B_new0.272*R0.534*G0.131*B; clc; clear all; Imageimread(9.jpg); Imagedouble(Image); Image_newImage; Image_new(:,:,1)0.393*Image(:,:,1)0.769*Image(:,:,2)0.189*Image(:,:,3…

jsp出现错误

昨天在调试页面时发生了如图显示的异常&#xff0c;它出现的原因是当<jsp:forward>或<jsp:include>标签没有参数时&#xff0c;开始标签和结束标签</jsp:forward>或</jsp:include>之间不能有空格&#xff0c;不能换行。解决办法&#xff1a;删除标签之…

门限回归模型的思想_Stata+R:门槛回归教程

来源 | 数量经济学综合整理转载请联系进行回归分析&#xff0c;一般需要研究系数的估计值是否稳定。很多经济变量都存在结构突变问题&#xff0c;使用普通回归的做法就是确定结构突变点&#xff0c;进行分段回归。这就像我们高中学习的分段函数。但是对于大样本、面板数据如何寻…

二阶传递函数的推导及几种求解方法的比较

二阶系统是指那些可用二阶微分方程描述的系统&#xff0c;其电路形式是由两个独立动态元器件组成的电路。 二阶系统电路包括二阶低通电路、二阶高通电路、二阶带通电路和二阶带阻电路。 下面分别给出以上二阶系统传递函数的推导过程&#xff0c;并以二阶低通电路的冲激响应为例…

前端技术-调试工具(上)

页面制作之调试工具 常用的调试工具有Chrome浏览器的调试工具&#xff0c;火狐浏览器的Firebug插件调试工具&#xff0c;IE的开发人员工具等。它们的功能与使用方法大致相似。Chrome浏览器简洁快速&#xff0c;功能强大这里主要介绍Chrome浏览器的调试工具。 打开 Google Chrom…

新版Microsoft Edge支持跨平台跨设备浏览

之前一直使用Google Chrome浏览器&#xff0c;可以随意安装插件扩展程序&#xff0c;无广告&#xff0c;这是我钟爱她的原因。但是之后不能登录Google账号&#xff0c;不能实现跨设备应用&#xff0c;就想找一款好用的替代品&#xff0c;近期发现了新版的Microsoft Edge&#x…

百度网盘7.3.1.10版本增加工作空间功能,可实现百度网盘与电脑文件夹同步

百度网盘新增的工作空间是一款文件同步的产品&#xff0c;支持电脑本地与云端之间的文件同步&#xff0c;多设备间文件自动保持同步、支持查看文件每次都修改的历史版本。功能类似于onedrive。如果有同步需求的小伙伴可以尝试下载最新版的百度网盘试用该功能哦。下载网址&#…

ubuntu+idea intellij配置android开发环境

最近对移动开发产生兴趣&#xff0c;决定在未来几年内利用空余时间开发一些app或游戏什么的&#xff0c;鉴于ios开发成本较高&#xff0c;且自身对java相对熟悉&#xff0c;因此选择了学习android。都说android市场不很很好&#xff0c;收益较难&#xff0c;但是仍觉得只要功夫…

LTI系统的物理可实现性与希尔伯特变换

产品的设计一般为线性时不变系统&#xff0c;要求系统具有物理可实现性&#xff0c;从时域上看&#xff0c;h(t)具有因果性&#xff1b;从频域上看&#xff0c;|H(jw)|符合佩利—维纳准则。任何具有因果性的系统&#xff0c;|H(jw)|的实部R(w)满足希尔伯特变换&#xff0c;|H(j…

垂死挣扎还是涅槃重生 -- Delphi XE5 公布会归来感想

Delphi 是一个基本上被我遗忘的工具&#xff0c; 要不是在使用RapidSql , 我是收不到Embarcadero 公司发出的邀请来參加Delphi XE5的公布会的。 有人可能要问为什么是Embarcadero &#xff08;名称很拗口&#xff09;而不是Borland 开Delphi 公布会&#xff0c; 这是由于Borla…

ubuntu下安装国际版QQ

在网上看到了好多的ubuntu下安装QQ的方法 好多 下面是看别人的文章 来测试的一篇 ubuntu下 安装国际版QQhttp://www.ubuntukylin.com/applications/showimg.php?langcn&id23下载 地址网盘:http://yun.baidu.com/share/link?shareid2983202140&uk202032639下载好以后 …

傅里叶变换应用——信号调制与解调

傅里叶变换的典型应用主要用于通信的信号调制与解调&#xff0c;信号调制的目的是将信号进行变换&#xff0c;使其便于传输。频率调制是将低频信号调制到高频载波信号上。同步信号解调是接受系统产生同步的高频载波信号进行解调&#xff0c;从调制信号中恢复原信号的过程。调制…

连续时间系统与离散时间系统的时域分析对比

通过学习离散时间系统的时域分析&#xff0c;发现其与连续时间系统的时域分析有很多相似之处&#xff0c;自己做了一个专题拓展&#xff0c;从数学模型描述到时域分析方法对两大系统进行横向对比&#xff0c;总结两者之间的联系和异同点。

[SQL Server]重命名数据库【转】

原文链接&#xff1a;http://www.cnblogs.com/Ryan_j/archive/2011/04/03/2004428.html 重命名数据库很简单&#xff0c;选择数据库--右键--重命名数据库 或者 sp_renamedb oldDB ,newDB 但是你再新建的相同名字的数据库就会报错&#xff0c;提示数据库已经存在 比如test数据库…

DCOS实践分享(4):如何基于DC/OS整合SMACK(Spark, Mesos, Akka, Cassandra, Kafka)

这篇文章入选CSDN极客头条 http://geek.csdn.net/news/detail/71572 当前&#xff0c;要保证业务的市场竞争力&#xff0c;仅靠设计一个可用并且好看的产品&#xff0c;已经完全不能满足要求。全球消费者都希望产品能够足够的智能化&#xff0c;通过大数据分析来改善他们的用户…

连续系统的卷积积分与离散系统的卷积和

在LTI连续系统中&#xff0c;以冲激函数为基本信号&#xff0c;将任意信号分解&#xff0c;从而得到连续系统的零状态响应等于激励与系统冲激响应的卷积积分 &#x1d466;&#x1d467;&#x1d460;&#x1d461;&#x1d453;&#x1d461;∗h&#x1d461; 在LTI离散…

【数据结构】图的深度优先搜索

图的深度优先搜索类似于树的深度优先搜索。不同的是&#xff0c;图中可能包括循环&#xff0c;即我们有可能重复访问节点。为了避免访问已经访问过的节点&#xff0c;我们要使用一个布尔变量的数组。 例如&#xff0c;在下图中&#xff0c;我们从节点2开始访问。当访问到节点0&…

菜鸟超级进口大仓618首度亮相!跨境商品也能当日次日达

6月12日下午3点40分&#xff0c;来自南京的一名用户收到了由宁波保税仓发出、圆通速递配送的雀巢咖啡&#xff0c;这距离他在天猫国际上下单仅过去4小时。 天猫618在昨日迎来进口日&#xff0c;进口销量火爆上升。作为国内最为先进的跨境进口仓&#xff0c;菜鸟超级大仓在本次大…