35.数组内存图(多个数组)

36.数组内存图(多个数组指向相同)

37.数组初始化之静态初始化

静态初始化:初始化时指定每个数组元素的初始值,由系统决定数组长度

格式: 数组类型[]变量名 = new 数据类型[] {数据1,数据2 ,数据3, ......};

范例: int[] arr = new int[]{1,2,3};

简化格式: 数据类型[ ]变量名 = {数据1, 数据2, 数据3, ......};

int[] arr = {1,2,3};System.out.println(arr);//[I@24d46ca6System.out.println(arr[0]);//1System.out.println(arr[1]);//2System.out.println(arr[2]);//3

38.数组操作的两个常见小问题

索引越界:访问了数组中不存在的索引对应的元素,造成索引越界问题

//索引越界 ArrayIndexOutOfBoundsException   //System.out.println(arr[3]);//System.out.println(arr[2]);

空指针异常:访问的数组已经不再指向堆内存的数据,造成空指针异常

null:空值,引用数据类型的默认值,表示不指向任何有效对象

//把null赋值给数组   NullPointerExceptionarr = null;System.out.println(arr[0]);

39.遍历

通过for循环实现获取数据,索引0-4

 遍历通用格式:

int[] arr = {11,22,33,44,55};for(int x = 0; x < 5; x++){System.out.println(arr[x]);             }

如果数组变量很多需要获取到元素个数,java提供了一个变量

格式:数组名.length

范例:arr.length

int[] arr = {11,22,33,44,55};for(int x = 0; x < arr.length; x++){System.out.println(arr[x]);}

最终遍历通用格式如下:

 int[] arr = {......};for(int x = 0; x<arr.length;x++){arr[x] //对arr[x]进行操作}

40.获取最值

int[] arr = {12,45,98,73,60};

思路:

1:定义一个变量,用于保存最大值(或最小值)

int max;

2.取数组中第一个数据座位变量的初始值

int max = arr[0];

3.与数组中剩余的数据逐个比对

for(int x = 1 ; x <arr.length ; x++){

if(arr[x] > max) {

max = arr[x];

}

4.循环结束后打印变量的值

System.out.printIn("max:" + max);

int[] arr = {11,22,33,44,55};int max = arr[0];for(int i = 1;i<arr.length;i++){if(arr[i] > max) {max = arr[i];}}System.out.println("max:" + max);

41.方法

//定义两个变量
int a = 10;
int b = 20;//获取两个

42.方法调用

格式:方法名();

范例: isEvnNumber();

注意:方法必须先定义后调用,否则程序将报错

public class test5 {public static void main(String[] args) {//调用方法isEvenNumber();}public static void  isEvenNumber() {//定义变量int number = 9;//判断该该数据是否为偶数if(number%2 == 0){System.out.println(true);}else{System.out.println(false);}}}

43.方法调用过程

main→isEvenNumber→ int number = 10 →if判断→在控制台输出→语句结束→isEvenNumbe结束→main结束

44.方法练习

需求:设计一个方法用于打印两个数字中的较大数

思路:

1.定义一个方法,用于打印两个数字的较大数

public static void getMax()  {
}

2.定义两个变量,用于保存数字

public static void getMax() {int a =10;int b =20;}

3.使用分支语句分两种情况对两个数字的大小关系进行处理

if( a > b) {System.out.println(a);}else {System.out.println(b);}

4.main()的方法中调用定义好的方法

public static void main(String[] args) {
//调用方法
getMax();
}
//演示代码
public class test5 {
public class MethodTest {public static void main(String[] args) {
getMax();}
//定义一个方法,用于 {打印两个数字中的较大数,例如getMax()
public static void getMax(){//方法中定义两个变量,用于保存两个数字int a = 10;int b = 20;//使用分支语句分两种情况对两个数字的大小关系进行处理if(a > b ) {System.out.println(a);}else{System.out.println(b);}}
}
}

45.带参数方法的定义

格式:

public static void 方法名(参数){ ... ...}

格式(单个参数):

public static viod 方法名   (数据类型 变量名) {... ...}
public static viod isEvenNumber(int number){... ...}

格式(多个参数):

public static viod 方法名(数据类型 变量名1,数据类型 变量名2,......){... ...}
public static viod getMax(int number1, int number2){... ...}

注意:

方法定义时,参数中的数据类型与变量名都不能缺少,缺少任意一个程序将报错

方法定义的时,多个参数之间使用逗号(,)分隔

46.带参数方法的定义和调用

格式: 方法(参数)

格式(单个参数):方法名(变量名/常量值)

范例(单个参数):isEvenNumber(5)

格式(多个参数): 方法名(变量名1/常量值1, 变量名2/常量值2);

范例:getMax(5,6);

注意:方法调用时,参数的数量与类型必须与方法定义中的设置相匹配,负责程序将报错

public static void main(String[] args){isEvenNumber(10);int number = 10;isEvenNumber(number);
}private static void isEvenNumber(int number) {if(number%2 == 0){System.out.println(true);}else{System.out.println(false);}
}

47.形参和实参

public static void main(String[] args){isEvenNumber(10);int number = 10;isEvenNumber(number);
}private static void isEvenNumber(int number) {if(number%2 == 0){System.out.println(true);}else{System.out.println(false);}
}

48.带参数方法练习

需求:设计一个方法用于打印两个数中的较大数,数据来源于方法参数

思路:

1.定义一个方法,用于打印两个数字中的较大数,例如getMax()

public static void getMax(){
}

2.为方法定义两个参数,用于接收两个数字

public static void getMax(int a, int b){
}

3.使用分支语句分两种情况对两个数字的大小关系进行处理

if(a>b){
System.out.printIn(a);
}else{
System.out.printIn

4.在main()方法中调用定义好的方法(使用常量)

public static void main(String[] args)
//直接传递常量
getmax(10.20)

5.在main()方法中调用定义好的

public static void main(String[] args){
//定义变量,传递
int a = 10;
int b = 20;
getMax(a,b);
}

代码示例:

public class MethodTest{public static void main(String[] args){//在main()方法中调用定义好的方法(使用常量)getMax( 10, 20);//调用方法的时候,人家要几个,你就给几个,人家要什么类型,你就给什么类型//getMax(30)//会报错//getMax(10.0,20.0)//在main()方法中调用定义好的方法(使用变量)int a = 10;int b = 20;getMax(a,b);}//定义一个方法,用于打印两个数字中的较大数,例如getMax()//为方法定义两个参数,用于接收两个数字public static void getMax(int a,int b){//使用分支语句分两种情况对两个数字的大小关系进行处理if(a > b){System.out.println(a);}else{System.out.println(b);}}
}

黑马程序员全套Java教程_Java基础入门视频教程零基础自学Java必备教程视频讲义(5)相关推荐

  1. 黑马程序员全套Java教程_Java基础教程_异常(含扩展)(二十三)

    黑马程序员全套Java教程_Java基础教程_异常(含扩展)(二十三) 1.1 异常概述与异常体系结构 1.2 JVM遇到异常时的默认处理方案 1.3 异常处理 1.4 异常处理之try--catch ...

  2. Python从入门到实战 基础入门视频教程(讲解超细致)-黄勇-专题视频课程

    Python从入门到实战 基础入门视频教程(讲解超细致)-4123人已学习 课程介绍         Python基础入门视频教程:本课程从Python入门到纯Python项目实战.超100以上课时, ...

  3. 黑马程序员-我的入学笔记1-关于C#.net基础

    ---------------------- <a href="http://edu.csdn.net"target="blank">ASP.Net ...

  4. 黑马程序员 一步一步往上爬 学习毕老师java视频的第03,04天

    ---------------------- <a href="http://edu.csdn.net/heima" target="blank"> ...

  5. 黑马程序员 一步一步往上爬 学习毕老师java视频第17,18,19天

    ---------------------- <a href="http://edu.csdn.net/heima" target="blank"> ...

  6. 2022年最新最全的Java零基础入门,零基础入门springboot,MySQL的学习

    今天就来开始带领大家零基础入门Java开发 写在前面 为什么学习Java Java用途很广泛,如下图所示,Java可以做很多工作 JAVA语言发展史 2019年3月,JDK12版本发布. 2019年9 ...

  7. 资深程序员教你,用python入门的知识抓取抖音短视频,太厉害了

    抖音短视频可以说是当下最流行的自媒体平台,而python编程同样也是目前最流行的编程语言. 今天,就让一位大厂的资深程序员,用最简单的方式,使用python抓取抖音短视频. 到时候我会把所有的源代码都 ...

  8. JavaScript整合版——后端程序员学js,只读一文直接零基础入门,大学生期末考试不挂科宝典。

    文章目录 建议朋友们在学习的过程中,边写边看 一.hello 二.html 1. 标签语法 2.font标签 3.特殊字符 4.标题标签 5.超链接(重点) 6.列表标签 7.img标签 8.表格标签 ...

  9. 易语言零基础入门视频教程 易语言自学全套教程

    易语言是一门以中文作为程序代码编程语言.易语言早期版本的名字为E语言.其最早的版本的发布可追溯至2000年9月11日.创造易语言的初衷是进行用中文来编写程序的实践,方便中国人以中国人的思维编写程序,并 ...

  10. python快乐编程—基础入门-Python零基础快乐学习之旅(K12实战训练)

    内容简介 作者简介 第1章 基本概念 1-1 认识Python 1-2 Python的起源 1-3 Python语言发展史 1-4 Python的应用范围 1-5 跨平台的程序语言 1-6 系统的安装 ...

最新文章

  1. Asp.Net Core写个共享磁盘文件Web查看器
  2. 论文阅读笔记(三)【ACL 2021】Locate and Label: A Two-stage Identifier for Nested Named Entity
  3. html5视频播放事件相关
  4. Linux通过进程号查询占用的端口
  5. 元学习Meta Learning/Learning to learn
  6. function与感叹号!
  7. bootstrap使用
  8. Java毕设项目水果网店管理系统(java+VUE+Mybatis+Maven+Mysql)
  9. threejs 模型添加文字的几种方式
  10. 手机号中间四位变成****
  11. itest考试切屏能检测出来吗_itest考试作弊怎么检测
  12. 阿里巴巴中台战略--共享服务体系
  13. 【好书推荐】物理、数学和发明的经典科普书籍
  14. python3文件的编码类型是_Python3.x环境创建Python脚本文件时,需要将文件编码格式设置为...
  15. PaddlePaddle深度学习7日入门CV篇Summaries
  16. 高性能消息中间件 nsq 解析-介绍
  17. VSC/SMC(十六)——自适应鲁棒滑模控制
  18. 在阿里(02):阿里入职记
  19. 大数据算法模型中的数据清洗
  20. 22.11.3打卡 HDU-1069

热门文章

  1. swagger 怎么去掉get delete_橡皮擦英文单词怎么读
  2. Flutter 启动页适配
  3. 工业镜头和民用镜头的特点和区别
  4. NUC980 PWM
  5. column函数HTML5,【稻客说函数】COLUMN函数详解,ROW、COLUMN函数制作九九乘法表
  6. sql server 2008新建视图时出现对象名无效
  7. 「题解」NOIP模拟测试题解乱写II(36)
  8. Error from chokidar (C:\): Error: EBUSY: resource busy or locked, lstat ‘C:\hiberfil.sys‘的解决方案
  9. 2353410-03-2,TCO-PEG8-acid末端羧酸(CO2H)可在活化剂(例如EDC或HATU)存在下与伯胺基反应以形成稳定键
  10. 用mqtt客户端发数据到 thingsboard Error: Connection refused: Not authorized