第四次慕课总结

原创 2015年07月07日 22:41:13


   这一节课主要是学习数组,包括一维数组、二维数组和三维数组,主要是一维数组的学习。数组是用来存储一个元素个数固定且元素类型相同的有序集。数组的声明使用语法:

elementType[] arrayRefVar。不同于基本数据类型变量的声明,声明一个数组变量时并不在内存中给数组分配任何空间,它只是创建一个对数组的引用的存储位置。一个数组创建之后就不能再修改它的大小,arrayRefVar.length可以求得数组的大小。数组元素可以通过下标访问,其范围从0开始到arrayRefVar.length-1;所以很多关于数组的运用,都是基于该下标的运用,这里就涉及到了一个很关键的技术就是循环,因为数组大小固定,所以一般都是使用for循环来处理数组的各种问题。Java支持一个简便的for循环,称之为for-each循环,可以顺序遍历整个数组。代码如下:

for (double u:mylist){

  System.out.println(u);

}

  数组的复制有三种方法:1、使用循环语句逐个地复制数组的元素;2/使用System类中的静态方法arraycopy;

System.arraycopy(sourceArray,0,targetArry,0,sourceArray.length);

  数组的另一个重要技术就是给方法传递数组,它传递的是对方法的引用。如果改变方法中的数组,方法外的数组也变化了。在方法中可以把类型相同但个数可变的参数传递给方法。

typeName...parameterName(类型名。。。参数名)

  二维数组实际上是一个数组,它的每个元素都是一个一维数组。它的处理方法和一维数组差不多都是利用循环来解决问题,只不过它是用二重循环来解决。

  在这一节中我遇到的一个难题就是编写一个程序,读入10个数并且显示互不相同的数(即一个数出现多次,但仅显示一次)。大体解法就是如果读入的数是一个新数,则将它存储在数组中,如果该数在数组中,则忽略它。刚开始就是不会数组的遍历,所以花费了不少时间。

以下是这节的相关一道习题:

编写一个程序,读入学生成绩,获取最高分,并划分等级。

package best;

 

import java.util.Scanner;

 

public class Best {

private static Scanner in;

public static void main(String[] args) {

// TODO Auto-generated method stub

    in = new Scanner(System.in);

System.out.println("Enter the number of students: ");

int num = in.nextInt();

System.out.println("Enter "+num+" score: ");

int[] scores = new int[num];

int i;

fori = 0;i<scores.length;i++){

scores[i]=in.nextInt();

}

int max = scores[0];

for(i=1;i<scores.length;i++){

if(scores[i]>max){

max = scores[i];

}

}

for(i=0;i<scores.length;i++){

if(scores[i]>=max-10){

System.out.println("Student "+i+" score is "+scores[i]+ " and grade is A");

}

else if(scores[i]>=max-20){

System.out.println("Student "+i+" score is "+scores[i]+ " and grade is B");

}

else if(scores[i]>=max-30){

System.out.println("Student "+i+" score is "+scores[i]+ " and grade is C");

}

else if(scores[i]>=max-40){

System.out.println("Student "+i+" score is "+scores[i]+ " and grade is D");

}

else{

System.out.println("Student "+i+" score is "+scores[i]+ " and grade is B");

}

}

 

}

 

}

《数字信号处理》 学习总结

21世纪属于数字化信息时代,很有幸学习了一些数字信号的基础内容,尽管还不清楚这些理论基础的应用,但他所应用的技术给了自己很多积累也让自己感受到了人类智慧的伟大,本文章主要论述对高西全和丁玉美编著的《数...
  • u012466304
  • u012466304
  • 2015年06月29日 22:10
  • 2545

Java代码实现下载慕课网视频

首先,必须得说,慕课网是一个非常棒的网站,上面很多很好的视频教程,在此表示感谢! 马上过年回家,因为家里没网,所以想把慕课上的视频下载下来在家里看,于是乎在网上找了半天下载工具,有的工具做的牛逼,直接...
  • u011734144
  • u011734144
  • 2017年01月20日 14:54
  • 2981

Coursera吴恩达机器学习课程 总结笔记及作业代码——第4周神经网络

Neural Networks1.1 Non-linear hypotheses在课程的开头,提到了非线性假设,会因为特征量的增多导致二次项数的剧增。 举个例子,在图像识别中,一个50*50像素的图...
  • qq_27008079
  • qq_27008079
  • 2017年05月02日 22:27
  • 6198

第四次作业:《财务决策与分析》——财务报表的逻辑架构(慕课组)

信管1124  201211671432 郑晓玲 课程链接:http://www.xuetangx.com/courses/TsinghuaX/80512073_2015X/2015_T1/in...
  • qq_25353681
  • qq_25353681
  • 2015年05月17日 19:32
  • 603

Android移动开发(慕课版) PDF版 知识点总结

  • 2017年12月13日 16:55
  • 1.43MB
  • 下载

学习Java过程时慕课网上的知识总结(自用)

成员变量和局部变量 成员变量:在类中定义用来描述对象将要有什么; 局部变量:在类的方法中定义,在方法中临时保存数据; 成员变量和局部变量的区别        1.Java会给成员变量初值;    ...
  • qq_37915248
  • qq_37915248
  • 2017年06月04日 09:47
  • 195

#学习笔记#(26)CSS3总结-慕课教程(部分)

一、什么是CSS3 CSS3是CSS2的升级版本,3只是版本号,它在CSS2.1的基础上增加了很多强大的新功能。 目前主流浏览器chrome、safari、firefox、opera、甚至360都已...
  • qq_24734285
  • qq_24734285
  • 2016年01月26日 15:05
  • 241

在慕课学完javascript的入门课程总结

在慕课上学完了javascript的入门和进阶课程,感觉学完能对javascript会更加熟悉,感觉一般的使用是够了,但是ajax还有一些更高级的应用需要在用到的时候再去学了,目前的学习笔记如下: ...
  • shenggor
  • shenggor
  • 2017年10月26日 15:25
  • 123

慕课细说多线程 Thread VS Runnable 总结

多线程Thread VS Runnable两个案例线程的启动方式  线程的启动方式,最直观的有两种: 继承Thread类 实现Runable接口 下面来看一段代码: 1. 继承了Thread类的He...
  • s740556472
  • s740556472
  • 2017年12月10日 20:26
  • 44

HttpServletResponse应用_侯子腾的个人总结(第四次课)

HttpServletResponse应用 一、简介:     Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象、和代表响应的response对...
  • redarmy_chen
  • redarmy_chen
  • 2012年11月07日 12:51
  • 4902
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:第四次慕课总结
举报原因:
原因补充:

(最多只允许输入30个字)