Java学习笔记之---方法与数组

(一)方法

(1)什么是方法?

  1. 方法是解决一类问题的步骤的有序组合
  2. 方法包含于类或对象中
  3. 方法在程序中被创建,在其他地方被引用

(2)方法的优点

  1. 使程序变得更简短而清晰。
  2. 有利于程序维护。
  3. 可以提高程序开发的效率。
  4. 提高了代码的重用性。

(3)方法的命名规则

  1. 方法的名字的第一个单词应以小写字母作为开头,后面的单词则用大写字母开头写,不使用连接符。例如:addPerson
  2. 下划线可能出现在 JUnit 测试方法名称中用以分隔名称的逻辑组件。一个典型的模式是:test<MethodUnderTest>_<state>,例如 testPop_emptyStack

(4)方法的定义

修饰符 返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数2,…)

{

执行语句;

return 返回值;

}

返回值类型: 运行这段程序得出的一个运算结果,结果类型,如果函数没有返回值则用void

            来表示该函数没有返回值。

函数名:仅仅是一个标识符,可以随意起名字。

形式参数:是一个变量,用于存储调用函数传递进来的实际参数。

实际参数:传递给形式参数的具体数值。

返回值:返回给调用者。

(5)函数的应用

  1. 根据学生考试成绩划分ABCD   A90-100  B80-89 C70-79 D60-69 E0-59,建议成绩使用double。将该程序使用函数定义。
public static void main(String[] args){
Scanner sc =new Scanner(System.in);
double n=sc.nextDouble();
char m=cj(n);
System.out.println(m);
}
public static char cj(double x){
char m;
if(x>=90&&x<=100){
m='A';
}else if(x>=80&&x<90){
m='B';
}else if(x>=70&&x<80){
m='C';
}else if(x>=60&&x<70){
m='D';
}else{
m='E';
}
return m;
}
(二)数组

(1)声明数组变量

dataType[] arrayRefVar; // 首选的方法

dataType arrayRefVar[]; // 效果相同,但不是首选方法

(2)创建数组(3种方法)

  1. int[] a=new int[3];

a[0]=1;

a[1]=2;

a[3]=3;

  1. int[] a=new int[]{1,2,3}
  2. int[] a={1,2,3}

(3)数组的应用

一个数组取出最大数

   public static void main(String[] args){
int[] a={5,7,2,66,32};
int i=0;
int n;
for(int j=1;j<=4;j++){
if(a[i]<a[j]){
n=a[i];
a[i]=a[j];
a[j]=n;
}
}
System.out.println(a[i]);
}
(三)二维数组

String str[][] = new String[3][4];

 //5.    定义一个函数计算二维数组中的元素的累加和
public static void main(String[] args){
int[][] a=new int[][]{{9,8,6},{7,5,6}};
int sum=0;
for(int i=0;i<2;i++){
for(int j=0;j<3;j++){
sum=sum+a[i][j];
}
}
System.out.println(sum);
}
(四)排序

(1)直接排序

以一个角标的元素和其他元素进行比较。

在内循环第一次结束,最值出现的头角标位置上。

   int[] a = {5, 22, 25, 15, 4};
int s = 0;
for (int i = 0; i < 5; i++) {
for (int j = i + 1; j < 5; j++) {
if (a[i] > a[j]) {
s = a[i];
a[i] = a[j];
a[j] = s;
}
}
}
for(int n:a){
System.out.println(n);
}

(2)冒泡排序

内循环结束一次,最值出现在尾角标位置

相邻两个元素进行比较。如果满足条件就进行位置置换

 int[] a = {5, 22, 25, 15, 4};
int s = 0;
for(int i=0;i<4;i++){
for(int j=0;j<4-i;j++){
if(a[j]>a[j+1]){
s = a[j];
a[j] = a[j+1];
a[j+1] = s;
}
} }
for(int n:a ){
System.out.println(n);
}

Java学习笔记之---方法和数组的更多相关文章

  1. 0019 Java学习笔记-面向对象-方法

    方法属于谁 方法要么属于类,要么属于对象 static修饰的方法属于类 没有static修饰的方法属于对象 方法只能定义在类里面,不能独立定义 不能独立的执行方法,要么通过类调用,要么通过方法调用 一 ...

  2. JavaSE学习笔记04方法、数组

    1.方法 java方法是语句的集合,它们在一起执行一个功能 方法是解决一类问题的步骤的有序组合 方法包含于类或对象中 方法在程序中被创建,在其他地方被引用 设计方法的原则:一个方法只完成1个功能,这样 ...

  3. Java学习笔记(五)——数组

    一.数组使用方法 1. 声明数组 语法: 数据类型[ ] 数组名: 或者   数据类型 数组名[ ]: 其中,数组名可以是任意合法的变量名 2. 分配空间 简单地说,就是指定数组中最多可存储多少个元素 ...

  4. 【Java学习笔记】集合转数组---toArray()

    package p2; import java.util.ArrayList; import java.util.Arrays; import java.util.List; public class ...

  5. Java学习笔记之方法重载,动态方法调度和抽象类

    一.方法重载 如果子类中的方法与它的超类中的方法有相同的方法名,则称子类中的方法重载超类中的方法,特别是当超类和子类中的方法名和参数类型都相同时,在子类中调用该方法时,超类中的方法会被隐藏.考虑下面程 ...

  6. 【原】Java学习笔记008 - 方法(函数)

    package cn.temptation; public class Sample01 { public static void main(String[] args) { // 方法/函数 Met ...

  7. java学习笔记5(方法)

    方法: 1.如何创建方法 修饰符   返回值类型  方法名(参数){被封装的代码段} 2.方法的定义和使用的注意事项: a:方法不能定义在另一个方法里面: b:方法 名字和方法的参数列表,定义和调用时 ...

  8. java学习笔记(2)——数组

    1.创建数组: int[] a = new int[n];//数组长度n不要求为常数,一旦创建了数组,其大小不可改变 int[] a = {0,1,2,3};//也可这样定义 获得数组元素的个数:ar ...

  9. Java学习笔记之方法

     前言:如果把所有代码都写到main方法中,后果是什么?    1,结构混乱 不清晰    2,不能重用 方法:规则:方法写在类中,不能写在其它方法中.方法不能嵌套方法 如何定义方法: 访问修饰符 返 ...

随机推荐

  1. C# Thread 参数

     Thread (ParameterizedThreadStart) 初始化 Thread 类的新实例,指定允许对象在线程启动时传递给线程的委托.   Thread (ThreadStart) 初 ...

  2. Image Captioning 经典论文合辑

    Image Caption: Automatically describing the content of an image domain:CV+NLP Category:(by myself, y ...

  3. block-chain java source

    source:github.com/enderlu/Swiftglobal ide:idea ,要安装Lombok plugin 配置: -Dspring.config.location=file:D ...

  4. DELPHI编写服务程序总结(在系统服务和桌面程序之间共享内存,在服务中使用COM组件)

    DELPHI编写服务程序总结 一.服务程序和桌面程序的区别 Windows 2000/XP/2003等支持一种叫做“系统服务程序”的进程,系统服务和桌面程序的区别是:系统服务不用登陆系统即可运行:系统 ...

  5. C# 实现系统关机、注销、重启、休眠、挂起

    原文:C# 实现系统关机.注销.重启.休眠.挂起 核心代码如下: using System; using System.Text; using System.Diagnostics; using Sy ...

  6. Android零基础入门第53节:拖动条SeekBar和星级评分条RatingBar

    原文:Android零基础入门第53节:拖动条SeekBar和星级评分条RatingBar 前面两期都在学习ProgressBar的使用,关于自定义ProgressBar的内容后期会继续学习的,本期先 ...

  7. win10 uwp 获得Slider拖动结束的值

    原文:win10 uwp 获得Slider拖动结束的值 本文讲的是如何获得Slider移动结束的值,也就是触发移动后的值.如果我们监听ValueChanged,在我们鼠标放开之前,只要拖动不放,那么就 ...

  8. Tomcat Java SSL

    转自 - http://blog.csdn.net/szzt_lingpeng/article/details/51247980 转载自:http://my.oschina.net/cimu/blog ...

  9. 跨进程访问VCL的一个用例(Delphi6、TurboDelphi测试通过)

    Controls.pas单元中有一个FindControl函数,通过句柄获得对应的TWinControl对象. function FindControl(Handle: HWnd): TWinCont ...

  10. 静态编译 Qt 5.6

    源码下载 Qt git地址:git://code.qt.io/qt/qt5.git 推荐用 SourceTree 客户端来克隆源码 准备工作 系统 Windows 7 或者 Windows 10 编译 ...