2024年java基础应用在哪里

java基础应用在哪里提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 文章目录 一 项目结构 二 idea 中的快捷键 三 数组 1 数组的定义格式 2 数组的初始化方式 1 动态初始化 2 静态初始化 3 初始化默认值 4

大家好,我是讯享网,很高兴认识大家。



提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 一、项目结构
  • 二、idea中的快捷键
  • 三、数组
    • 1.数组的定义格式
    • 2.数组的初始化方式
      • (1)动态初始化
      • (2)静态初始化
      • (3)初始化默认值
      • (4)动态初始化vs静态初始化
    • 3.数组元素访问及遍历
    • 4.数组操作的两个常见问题
      • (1)索引越界异常
      • (2)空指针异常
    • 5.数组应用
      • (1)数组获取最大值
      • (2)数组元素求和
      • (3)数组基本查找【应用】
    • 6.多维数组—二维数组
      • (1)动态初始化
      • (2)静态初始化
      • (3)二维数组访问元素的细节问题
      • (4)二维数组的应用
  • 四、方法
    • 1.无参数方法定义和调用
    • 2.带参数方法的定义和调用
    • 3.通用格式
    • 4.形参和实参
    • 5. 带返回值方法的定义和调用
    • 6.方法重载
    • 7.参数传递
        • (1)方法参数传递基本类型
        • (2)方法参数传递引用类型
    • 7.方法应用
  • 五、Debug
    • Debug介绍与操作流程
  • 六、 ArrayList 集合 (基础)
    • 1.基本方法
      • (1)ArrayList构造方法
      • (2)ArrayList的增删改查
            • ①add方法-----增
            • ②remove------删除元素
            • ③set(i , E`)------修改元素方法
            • ④get( i )------获取元素
        • (3)集合的基础应用


一、项目结构

·一个项目会被分成多个模块;模块中包含了一些包;包是把一些类规整进一个包内而形成的;类就是创建的一个编译文件(java文件等)
在这里插入图片描述
①project:项目(工程)
| 一个项目会被分成多个模块;模块中包含了一些包;包是把一些类规整进一个包内而形成的;类就是创建的一个编译文件(java文件等)
②module:模块
③package:包
| 把一些类规整进一个包
④class : 类
| 创建的一个java文件

二、idea中的快捷键

①psvm + 回车 : 快速生成main方法
②sout + 回车 : 快速生成打印语句
③alt + 1 : 隐藏目录结构
alt +4 : 隐藏工作台
④ctrl + alt + L : 格式化代码
ctrl + D : 向下复制一行
ctrl + X : 剪切当前行
ctrl + / : 批量加入单行注释
⑤alt + Ins(Insert) : 创建方法

三、数组

数组就是存储数据长度固定的容器,存储多个数据的数据类型要一致。

1.数组的定义格式

①数据类型[ ] 数组名 : int[ ] arr;
②数据类型 数组名[ ] : int arr[ ];
·数组要初始化才能使用(实质上就是开辟一块空间)

2.数组的初始化方式

(1)动态初始化

数组动态初始化就是只给定数组的长度,由系统给出默认初始化值

数据类型[] 数组名 = new 数据类型[数组长度];

int[] arr = new int[3];

数组的内存分配 内存是计算机中的重要原件,临时存储区域,作用是运行程序。

​ 我们编写的程序是存放在硬盘中的,在硬盘中的程序是不会运行的。

​ 必须放进内存中才能运行,运行完毕后会清空内存。

​ Java虚拟机要运行程序,必须要对内存进行空间的分配和管理。
在这里插入图片描述

(2)静态初始化

数据类型[] 数组名 = new 数据类型[]{元素1,元素2,…};
int[] arr = new int[]{11,22,33};

简化版格式

数据类型[] 数组名 = {元素1,元素2,…};
int[] arr2 = {44,55,66};

(3)初始化默认值

整数类: 0
浮点类型: 0.0
布尔类型: false
字符类型: 空字符
字符串: null

(4)动态初始化vs静态初始化

·动态初始化:
手动指定数组长度,系统给出默认初始化值
静态初始化:
手动指定数组元素,系统根据元素个数,自动计算数组长度

3.数组元素访问及遍历

用到索引 (从 0 ~ n-1 )
数组的遍历

 
讯享网 

在这里插入图片描述

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

(1)索引越界异常

索引范围为0 ~ n-1 , 却访问了n

(2)空指针异常

5.数组应用

(1)数组获取最大值

最大值获取:从数组的所有元素中找出最大值。

讯享网

在这里插入图片描述

(2)数组元素求和

需求:键盘录入5个整数,存储到数组中,并对数组求和

 

在这里插入图片描述

(3)数组基本查找【应用】

讯享网

在这里插入图片描述
2.需求:在编程竞赛中,有6个评委为参赛的选手打分,分数为0-100的整数分。
选手的最后得分为:去掉一个最高分和一个最低分后 的4个评委平均值 (不考虑小数部分)。

 

在这里插入图片描述

6.多维数组—二维数组

也是一个容器,但存储的是一个数组(本质上仍是数组,存放的东西不同而已)

(1)动态初始化

在这里插入图片描述

(2)静态初始化

完整格式:
数据类型[][] 变量名 = new 数据类型[][]{ {元素1,元素2…},{元素1,元素2}…}
int[][] arr = new int[][]{ {11,22,33} , {44,55,66} };

简化格式:
数据类型[][] 变量名 = { {元素1, 元素2…} , {元素1元素2…} , …};
int[][] arr = { {11,22,33} , {44,55,66} };

注意:
静态初始化二维数组,可以用来定义第二维不同的情况
·完整版
int[][] arr = new int[][] { {1, 2,3} , {4, 5} , { 6,7,8,9 } } ;
·简化版
int[][] arr ={ {1,2,3},{4,5},{6,7,8,9} };

一维数组中的静态初始化,可以将定义和赋值分开写
int[] a;
a={1,2,3};

但二维数组的静态初始化不可以这样

(3)二维数组访问元素的细节问题

定义时易错点
①若省略m : int[ ][ ] arr = new int[ ][3] ; ——>会产生编译报错
②若省略n : int[ ][ ] arr = new int[3][ ] ; ——>编译通过
·打印arr[0]、arr[1]、… ——> 结果为null
(因为省略了n,不能确定其地址长度,所以初始化为默认值null)
·打印arr[0][0]、arr[1][0]、… ——> 结果报错,错为空指针异常
(一维数组中元素为空,指向的对象的“指向”不存在,即为空指针异常)

·可以存入提前创建好的数组(另一种定义方法[半动半静]):
如果二维数组中第二维数组的长度不相同,我们可以采用先不指定第二维的长度来初始化数组

 

(4)二维数组的应用

需求:
某公司季度和月份统计的盈利数据如下: 单位(万元)
第一季度: 22,66,44
第二季度: 77,33,88
第三季度: 25,45,65
第四季度: 11,66,99
①求该公司全年的盈利总和
②分别统计该公司每一个季度的盈利总和

 

在这里插入图片描述

四、方法

方法(method)是将具有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集

1.无参数方法定义和调用

java public static void 方法名 ( ) {
// 方法体;
}

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

参数:由数据类型和变量名组成 - 数据类型 变量名(int a)

public static void 方法名 (参数1) {
方法体;
}
public static void 方法名 (参数1, 参数2, 参数3…) {
方法体;
}

调用格式:
方法名(参数);
方法名(参数1,参数2);

题目练习
需求:判断一个数是奇数还是偶数

 

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

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

3.通用格式

public static 返回值类型 方法名(参数) {
方java基础应用在哪里法体;
return 数据 ;
}

4.形参和实参

  1. 形参:方法定义中的参数

​ 等同于变量定义格式,例如:int number

  1. 实参:方法调用中的参数

​ 等同于使用变量或常量,例如: 10 number

题目练习
需求:设计一个方法(print) 用于打印 n 到 m 之间所有的奇数

 

在这里插入图片描述

5. 带返回值方法的定义和调用

定义格式
public static 数据类型 方法名 ( 参数 ) {
return 数据 ;
}

注意:

方法的返回值通常会使用变量接收,否则该返回值将无意义

题目练习
需求:设计一个方法可以获取两个数的较大值,数据来自于参数

 

6.方法重载

方法重载指同一个类中定义的多个方法之间的关系,满足下列条件的多个方法相互构成重载

  • 多个方法在同一个类中
  • 多个方法具有相同的方法名
  • 多个方法的参数不相同 ( 类型不同 、 数量不同 、 顺序不同(但不建议用) )

注意:

  • 重载仅对应方法的定义,与方法的调用无关,调用方式参照标准格式
  • 重载仅针对同一个类中方法的名称与参数进行识别,与返回值无关,换句话说不能通过返回值来判定两个方法是否相互构成重载

7.参数传递

对于引用类型的参数,形式参数的改变,影响实际参数的值

  • 结论依据:
    引用数据类型的传参,传入的是地址值,内存中会造成两个引用指向同一个内存的效果,所以即使方法弹栈,堆内存中的数据也已经是改变后的结果
(1)方法参数传递基本类型

这里是引用

(2)方法参数传递引用类型

在使用引用类型时,

这里是引用
在这里插入图片描述
在这里插入图片描述

7.方法应用

  • 数组遍历
    设计一个方法用于数组遍历,要求遍历的结果是在一行上的。例如:[11, 22, 33, 44, 55]
 

在这里插入图片描述

  • 数组最大值
    需求:设计一个方法用于获取数组中元素的最大值
 

在这里插入图片描述

  • 方法同时获取数组最大值和最小值
    需求:设计一个方法,该方法能够同时获取数组的最大值,和最小值

注意: return语句, 只能带回一个结果.
可以尝试把返回值放在一个数组中
,那么定义方法时,注意数据类型部分,要定义int[ ],来返回数组

 

在最小值min定义时,不要定义为0,当0进入循环时,没有任何值<0,可以定义为数组中的某个数值

在这里插入图片描述

五、Debug

Debug介绍与操作流程

  • 加断点
    选择要设置断点的代码行,在行号的区域后面单击鼠标左键即可
    在这里插入图片描述
  • 如何运行加了断点的程序
    在代码区域右键Debug执行
    在这里插入图片描述
  • 看Debugger窗口

在这里插入图片描述

  • 看Console窗口
    控制台窗口,显示执行的内容
  • 进行下一步
    在这里插入图片描述

打断点 —> 通过step over(step into)执行 —> 直接停止Stop,或跳到下一个断点Resume
在这里插入图片描述
在这里插入图片描述

六、 ArrayList 集合 (基础)

集合和数组的区别
①共同点:都是存储数据的容器
②不同点:数组的容量时固定的,集合的容量是可变的 数组中只能存放一种数据类型,集合中可以存放多种

1.基本方法

(1)ArrayList构造方法

①导入包:

 

②创建对象

 

(2)ArrayList的增删改查

①add方法-----增

add(E)
: 将指定元素添加到列表尾部打印结果:

”E“:泛型,是表示集合中 保存的数据的类型

 

在这里插入图片描述

在这里插入图片描述

限定集合的数据类型
需要在创建ArrayList对象时添加一个数据类型:

: 是一种特殊的数据类型,泛型

它不止可以应用在基本数据类型中,也可以用于 在这里插入图片描述

add(I , E )方法:
向集合中指定位置插入指定元素

 

在这里插入图片描述
在这里插入图片描述

②remove------删除元素

remove(E)
删除指定的元素,返回删除是否成功(返回的值时布尔类型的值)

 

在这里插入图片描述

remove(i)
删除指定索引处的元素,返回被删除的元素()
(如果指定了不存在的索引,会报出"索引越界"的异常)

 

在这里插入图片描述

③set(i , E`)------修改元素方法
 
④get( i )------获取元素

获取给定索引处的元素

 
(3)集合的基础应用
  • ArrayList存储字符串并遍历
  • 创建一个存储字符串的集合,存储3个字符串元素,使用程序实现在控制台遍历该集合
 

在这里插入图片描述

  • 创建一个存储学生对象的集合,存储3个学生对象,使用程序实现在控制台遍历该集合
 

在这里插入图片描述

  • 键盘录入学生信息到集合
    需求:创建一个存储学生对象的集合,存储3个学生对象,使用程序实现在控制台遍历该集合
 

在这里插入图片描述

  • 集合删除元素案例
    创建一个存string的集合,内部存储(匿名,八戒,匿名,孙悟空,唐僧,匿名)字符串删除所有的”医名”字串,删除后,将集合剩余元素输出到控制台

                    
小讯
上一篇 2024-12-23 23:02
下一篇 2024-12-31 10:37

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/6749.html