Java学习笔记之---方法和数组
Java学习笔记之---方法与数组
(一)方法
(1)什么是方法?
- 方法是解决一类问题的步骤的有序组合
- 方法包含于类或对象中
- 方法在程序中被创建,在其他地方被引用
(2)方法的优点
- 使程序变得更简短而清晰。
- 有利于程序维护。
- 可以提高程序开发的效率。
- 提高了代码的重用性。
(3)方法的命名规则
- 方法的名字的第一个单词应以小写字母作为开头,后面的单词则用大写字母开头写,不使用连接符。例如:addPerson。
- 下划线可能出现在 JUnit 测试方法名称中用以分隔名称的逻辑组件。一个典型的模式是:test<MethodUnderTest>_<state>,例如 testPop_emptyStack。
(4)方法的定义
修饰符 返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数2,…)
{
执行语句;
return 返回值;
}
返回值类型: 运行这段程序得出的一个运算结果,结果类型,如果函数没有返回值则用void
来表示该函数没有返回值。
函数名:仅仅是一个标识符,可以随意起名字。
形式参数:是一个变量,用于存储调用函数传递进来的实际参数。
实际参数:传递给形式参数的具体数值。
返回值:返回给调用者。
(5)函数的应用
- 根据学生考试成绩划分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种方法)
- int[] a=new int[3];
a[0]=1;
a[1]=2;
a[3]=3;
- int[] a=new int[]{1,2,3}
- 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学习笔记之---方法和数组的更多相关文章
- 0019 Java学习笔记-面向对象-方法
方法属于谁 方法要么属于类,要么属于对象 static修饰的方法属于类 没有static修饰的方法属于对象 方法只能定义在类里面,不能独立定义 不能独立的执行方法,要么通过类调用,要么通过方法调用 一 ...
- JavaSE学习笔记04方法、数组
1.方法 java方法是语句的集合,它们在一起执行一个功能 方法是解决一类问题的步骤的有序组合 方法包含于类或对象中 方法在程序中被创建,在其他地方被引用 设计方法的原则:一个方法只完成1个功能,这样 ...
- Java学习笔记(五)——数组
一.数组使用方法 1. 声明数组 语法: 数据类型[ ] 数组名: 或者 数据类型 数组名[ ]: 其中,数组名可以是任意合法的变量名 2. 分配空间 简单地说,就是指定数组中最多可存储多少个元素 ...
- 【Java学习笔记】集合转数组---toArray()
package p2; import java.util.ArrayList; import java.util.Arrays; import java.util.List; public class ...
- Java学习笔记之方法重载,动态方法调度和抽象类
一.方法重载 如果子类中的方法与它的超类中的方法有相同的方法名,则称子类中的方法重载超类中的方法,特别是当超类和子类中的方法名和参数类型都相同时,在子类中调用该方法时,超类中的方法会被隐藏.考虑下面程 ...
- 【原】Java学习笔记008 - 方法(函数)
package cn.temptation; public class Sample01 { public static void main(String[] args) { // 方法/函数 Met ...
- java学习笔记5(方法)
方法: 1.如何创建方法 修饰符 返回值类型 方法名(参数){被封装的代码段} 2.方法的定义和使用的注意事项: a:方法不能定义在另一个方法里面: b:方法 名字和方法的参数列表,定义和调用时 ...
- java学习笔记(2)——数组
1.创建数组: int[] a = new int[n];//数组长度n不要求为常数,一旦创建了数组,其大小不可改变 int[] a = {0,1,2,3};//也可这样定义 获得数组元素的个数:ar ...
- Java学习笔记之方法
前言:如果把所有代码都写到main方法中,后果是什么? 1,结构混乱 不清晰 2,不能重用 方法:规则:方法写在类中,不能写在其它方法中.方法不能嵌套方法 如何定义方法: 访问修饰符 返 ...
随机推荐
- Ionic2开发环境搭建-VS 2017
原文:Ionic2开发环境搭建-VS 2017 目前在VS 2017中创建Ionic2版本项目 注:在VS中开发Ionic项目,使用的Ionic(v2.x),Cordova(v6.3.1),Angul ...
- WPF 为资源字典 添加事件响应的后台类
原文:WPF 为资源字典 添加事件响应的后台类 前言,有许多同学在写WPF程序时在资源字典里加入了其它控件,但又想写事件来控制这个控件,但是资源字典没有CS文件,不像窗体XAML还有一个后台的CS文件 ...
- windows下,Qt Creator 中javascript调试器安装并使用
最开始使用Qt Creator时,想使用断点来调试javascript代码.但在按下debug键后,却提示调试器未配置,让我比较郁闷. 好了,郁闷的是说了,咱们来说说高兴的.要Qt Creator调试 ...
- Android 查看App冷启动时间/热启动时间/页面打开时间
Android 查看App冷启动时间/热启动时间/页面打开时间 冷启动时间 热启动时间 页面打开时间 通过adb查看 adb shell am start -W packageName/Activit ...
- 动态加载XAML
string FadeInStoryBoard = "<StoryBoard ... />"; StoryBoard storyBoard = XamlReader.L ...
- JS 浮点加减乘除运算
//浮点数加法运算 function FloatAdd(arg1,arg2){ var r1,r2,m; try{r1=arg1.toString().split(".")[1]. ...
- 关于Android应用内存泄露问题
在Java中内存泄漏是指某个(某些)对象已经不再被使用,应该被GC所回收的空间,但有一个对象持有这个对象的引用从而阻止这个对象被回收.比如我们通常会这样创建一个View, TextView tv = ...
- Linux基础命令杂记
今天又一次搞Linux生产环境搭建.这是种步骤很多,很繁琐而且又不得不做的事情.虽然做过很多次,但还是有很多步骤.命令不记得,每一次到处找资料很麻烦,于是将一些步骤记下,以便查找. 登录远程MySQL ...
- 支付宝RSA签名之Delphi实现
Delphi有个很大的问题就是,厂商的不作为(没有封装标准的Cipher类库),让大家自己造轮子. 今天的轮子就是RSA签名,由于Delphi没有封装Cipher类库,所以只的自己写了. 因为要在Fi ...
- <iOS小技巧> 返回上级目录操作Goback()方法
Goback()方法功能:返回上一级界面,通过判断 popViewControllerAnimated 类型是否为空,来判断是present还是pop出来,然后直接做了releaseSelf操作: - ...