java四个数打擂_Java语言逻辑 数组

《Java语言逻辑 数组》由会员分享,可在线阅读,更多相关《Java语言逻辑 数组(42页珍藏版)》请在人人文库网上搜索。

1、数组,Java语言逻辑,1、为什么需要数组,一次Java内部测试结束后,老师给小明分配了一项任务,计算全班(30人)的平均分,int stu1 = 95; int stu2 = 89; int stu3 = 79; int stu4 = 64; int stu5 = 76; int stu6 = 88; avg = (stu1+stu2+stu3+stu4+stu5+stu30)/30,30个变量太繁琐,为什么需要数组,生活案例:博物架,字画类,好办法分类放,易于找 1、格子提供了存储空间 2、每一类别都起一个名字 3、每件物品都有个标号,古玩类,为什么需要数组,类比博物架:可不可以把数据归类。

2、存放? 分类存放不同类型的数据,int类型,double类型,char类型,2、数组在内存中的存储,80,内存,整型数组 int b = 100,98,;,整型变量 int a = 80;,3、数组定义,数组是一个变量,存储相同数据类型的一组数据,int类型,元素,博物架名,标识符,古玩,物品编号,元素下标,物品类型,元素类型,数据,小结练习,1、使用数组的好处是什么? 2、下列哪组数据能存储在数组中?数组的类型是什么? “刘星”,“夏雨”,“夏雪” 8,98,c,23 98.1,341.2,34.3,数组中的所有元素必须属于相同的数据类型,String型,double型,4、如何使用数组,使。

3、用数组四步走: 1、声明数组 2、分配空间 3、赋值 4、处理数据,int a;,a = new int5;,a 0 = 8;,a 0 = a0 * 10;,a,8,80,a0,5、数组的声明,int score1; /Java成绩 int score2; /C#成绩 String name; /学生姓名,声明数组: 告诉计算机数据类型是什么,1,数据类型 数组名 ;,数据类型 数组名 ;,6、数组初始化,score = new int30; avgAge = new int6; name = new String30;,30,分配空间: 告诉计算机分配几个格子,数组属于引用数据类型,2,数据。

4、类型 数组名 = new 数据类型数组长度 ;,声明数组并分配空间,数组名 = new 数据类型数组长度 ;,7、数组赋值,score0 = 89; score1 = 79; score2 = 76; ,赋值:向分配的格子里放数据,score0,score1,score2,89,79,76,太麻烦!能不能一起赋值?,3,数组赋值,方法1: 边声明边赋值 方法2:动态地从键盘录入信息并赋值,解决,int score = 89, 79, 76;,Scanner input = new Scanner(System.in); for(int i = 0; i 30; i +) scorei = in。

5、put.nextInt(); ,int score = new int 89, 79, 76;,这里必须为空!,创建数组小结,8、使用数组求平均值,int score = 60, 80, 90, 70, 85; double avg; avg = (score0 + score1 + score2 + score3 + score4)/5;,int score = 60, 80, 90, 70, 85; int sum = 0; double avg; for(int index = 0; index score.length; index+) sum = sum + scoreindex; 。

6、avg = sum / score.length;,成绩单,访问数组成员:使用“标识符下标”,访问成员,数组的length属性,对数据进行处理:计算5位学生的平均分,4,演示示例:完整代码,使用数组求平均值,回顾问题1:班里有30位学生,使用动态录入并赋值的方式计算平均分,常见错误,public class ArrayDemo public static void main(String args) int score = new int ; score0 = 89; score1 = 63; System.out.println(score0); ,编译出错,没有写明数组的大小,常见错误,p。

7、ublic class ArrayDemo public static void main(String args) int score = new int2; score0 = 89; score1 = 63; score2 = 45; System.out.println(score2); ,编译出错,数组越界,数组下标的范围是从0到数组长度-1,常见错误,public static void main(String args) int score = new int5; score = 60, 80, 90, 70, 85; int score2; score2 = 60, 80, 90。

8、, 70, 85; ,编译出错,创建数组并赋值的方式必须在一条语句中完成,int数组元素缺省值为0,public class ArrayDemo public static void main(String args) int score = new int3; score0 = 89; System.out.println(score1); ,0,输出结果,在Java中定义的数组如果是基本类型数组,若没有指定初始值,则依据数据类型不同会给数组元素赋予一个默认值,小结练习,使用数组的步骤是什么? 有一个数列:8,4,2,1,23,344,12 1)循环输出数列的值 2)求数列中所有数值的和 3。

9、)猜数游戏:从键盘中任意输入一个数据,判断数列中是否包含此数,数组中的数组,Java中并没有像其他语言所拥有的多维数组的概念,可以定义数组中的数组 多维数组解析为数组中的数组,所以可以很容易的构造多维不规则数组,如下图,a0 1 a1 1 2 a2 1 2 3 a3 1 2 3 4,数组中的数组,规则的数组中的数组,int num; num = new int34;/分配空间,3行4列 num01 = 12; num23 = 34;,数组中的数组,不规则的数组中的数组,/java中定义的数组中的数组列数可以不同 int num; num = new int3; num0=new int5;/第。

10、一行定义5列 num1=new int3; num2=new int2; num04 = 45; num12 = 34; num21 = 21; System.out.println(num04); System.out.println(num12); System.out.println(num21); System.out.println(num02);/打印未分配的,发现输出为0,数组中的数组,初始时分配不规则数组元素,/分配不规则的数组元素 int num = 1,2,3,4,5,6; /输出每一行最大下标的元素 System.out.println(num02); System.ou。

11、t.println(num11); System.out.println(num20);,数组中的数组,遍历数组中的数组,/遍历 for(int i=0;inum.length;i+) for(int j=0;jnumi.length;j+) System.out.print(numij+); System.out.print(n); ,foreach语句的使用,foreach语句的使用遍历多维数组或集合元素时非常方便,foreach的语句格式:,for(元素类型t 元素变量x : 遍历对象obj) ,foreach语句的使用,遍历一维数组,/* * foreach输出一维数组 */ int 。

12、arr1 = 2, 3, 1 ; System.out.println(-1-foreach输出一维数组); for (int x : arr1) System.out.println(x); / 逐个输出数组元素的值 ,foreach语句的使用,遍历二维数组,/* * foreach输出二维数组 */ int arr2 = 4, 3 , 1, 2 ; System.out.println(-2-foreach输出二维数组); for (int x : arr2) for (int e : x) System.out.println(e); / 逐个输出数组元素的值 ,foreach语句的使用。

13、,遍历三维数组,/* * foreach输出三维数组 */ int arr3 = 1, 2 , 3, 4 , 5, 6 , 7, 8 ; System.out.println(-3-foreach输出三维数组); for (int a2 : arr3) for (int a1 : a2) for (int x : a1) System.out.println(x); ,求最大值,max = stu0 ; if (a1max ) max=a1 ; if (a2max ) max=a2 ; if (a3max ) max=a3 ; ,使用循环 来解决,求最大值,/计算成绩最大值 max = sco。

14、re0; for (int index = 1;index max) max = scoreindex; System.out.println(本次考试的五位学生的最高分是: + max);,循环打擂,使用max存储初始值:第一个元素为擂主,小结练习,小明要去买一部手机,他询问了4家店的价格,分别是2800元,2900元,2750元和3100元,显示输出最低价,int min = list0; /存储最小值 for ( int i = 1; i listi ) min = listi; /交换 ,排序,3、循环录入5位学员成绩,进行升序排列后输出结果 使用java.util.Arrays类 j。

15、ava.util包提供了许多存储数据的结构和有用的方法 Arrays类提供许多方法操纵数组,例如:排序,查询 Arrays类的sort()方法: 对数组进行升序排列,Arrays.sort(数组名);,排序,import java.util.*; /导入包 int score = new int5; Scanner input = new Scanner(System.in); System.out.println(请输入5位学员的成绩:); for(int i = 0; i score.length; i+) scorei = input.nextInt(); /依次录入5位学员的成绩 Ar。

16、rays.sort(score); /排序 for(int index = 0; index score.length; index+) System.out.println(scoreindex); /输出结果 ,数组中的元素被重新排列,完整代码演示,循环录入学生成绩并存储在数组中,循环输出数组中的信息,小结练习,有一列乱序的字符,a,c,u,b,e,p,f,z,排序并按照英文字母表的逆序输出,总结,数组的优点是什么? 数组的3种声明方式是什么? 如何引用数组中的元素? 求数列的平均值、最大值以及排序的方法?,综合练习,1.下列数组的初始化正确的是()(选两项) A.int score = 。

17、new int5; B.int score = new int90,12,34,77,56; C.int score = new int590,12,34,77,56; D.int score = 90,12,34,77,56;,2.下面关于数组的说法中,错误的是()(选两项) A.在类中声明一个整型数组作为成员变量,如果没有给它赋值,数组元素值为空 B.数组可以在内存空间连续存储任意一组数据 C.数组必须先声明,然后才能使用 D.数组本身是一个对象,3.阅读下面的代码,输出结果是() public class Demo double price = new double5; public s。

18、tatic void main(String args) Demo demo = new Demo(); demo.price0 = 98.10; demo.price1 = 32.18; demo.price2 = 77.74; for(int i=0;i5;i+) System.out.println(int)demo.pricei); ,A.98 32 78 0 0,B.98 32 77 0 0,B.98 32 78,D.编译出错,4.阅读下面的代码,它完成的功能是() String a = 我们,你们,小河边,我们,读书; for(int i=0;ia.length;i+) if(ai.equals(我们) ai = 他们; ,A.查找 B.查找并替换 C.增加 D.删除。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值