自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 双指针算法——滑动窗口

滑动窗口本质上也是利用双指针来解决特定情况下的问题。滑动窗口算法思想是通过俩个指针,定义在左边和右边,俩指针同向运动,保持着一个像“窗口”一样的双指针来不停的压缩或者扩展来移动“窗口”,从而找到特定的子数组。

2024-06-24 12:54:24 1090 7

原创 双指针算法

该算法涉及到使用俩个指针来来遍历数组,通过俩个指针的协调工作,能大大的提高代码效率,有效的减少时间复杂度,提高代码性能。双指针算法包括快慢指针,前后指针,或者可以搭配单调性来很好的解决问题。本文将利用Java语言来实现双指针的常见题型。

2024-06-18 22:38:06 820 8

原创 ArrayList——简单洗牌算法

该语法情况比较特殊,相当于一个“二维数组”存着一个个线性表的结构,如图:该语法的灵活性强,可适用于多种类型和多种情况。接下来就使用该语法来实现一个简单的洗牌操作。

2024-06-06 22:44:06 863 9

原创 java——顺序表

顺序表是线性表的一种,它是较于数组更加灵活的一种储存方式。线性表通常是逻辑上是连续的一条直线,但在物理上不是连续的。java中已经实现好了一个顺序表,搭配泛型可以支持各种类型的使用,下面就来介绍该如何使用。

2024-06-06 16:56:09 891 3

原创 JAVA——异常

先来看异常的内部是如何实现的:可以看到,一路调用父类来执行抛出异常的操作,而形参为String类(填写错误信息)我们可以模仿使用继承来选择异常为运行时异常还是编译时异常,然后内部调用super,传入一个形参,则如下实现://登录//用户名异常//密码异常//自定义异常实现登录//抛出异常错误if(!throw new NameException("用户名错误!");if(!throw new PasswordException("用户密码错误!");

2024-06-03 12:34:39 888 8

原创 String类详解

由图可知道,String类的字符由value数组所进行维护,无法修改。所有涉及到可能修改字符串内容的都是创立一个新的对象,改变的是新对象,原有的字符串无法改变,如我们使用replace方法:可以看到,这个替换只是创建了新的对象,并没有真正的改变。如果真要改变字符串,可以直接这样:

2024-05-30 15:48:50 979 13

原创 Object——toString方法和equals方法

在java中,所有类都是有继承关系存在的,都默认继承Object类。当一个类继承了其他父类,它并不会直接继承Object类,但是它的父类若是没有其他继承关系也会默认继承Object类,子类也可以继续调用Object类。由图可知,原先的方法是类名 + “@”+ 地址组成的(内部实现可自行查看,按住ctrl+点击),我们通过了重写的方法使得他能够打印出整个对象。Object类提供着许多方法,但是这些方法在开发过程中往往不能满足程序员想要的功能,一般会对Object类的方法进行重写,以满足功能开发的多样性。

2024-05-27 11:54:04 357 6

原创 javaSE—图书管理系统(基础代码版)

图书管理系统演示。

2024-05-27 11:34:26 1559 10

原创 Object——Clonable接口(深浅拷贝)

Object提供了一个拷贝方法,用于重新创建出一个数据一样的对象或者数据的副本。拷贝的意义在于节省创建对象的成本,避免原对象的数据修改。

2024-05-23 15:53:14 325 5

原创 用接口模拟实现排序方法

如果int能和int进行比较,那么student类能和student类进行比较嘛?答案是不能直接比较的,因为编译器不确定是通过什么方法比较,比如让sort方法进行排序,编译器会报错那我们该如何使其能成功比较并且排序呢?

2024-05-22 19:46:26 392 8

原创 JAVA——接口

关键字:interface(用于定义接口)关键字:implements(用来实现接口)接口的定义方式与类的定义方式类似,只需吧class换成interface即可语法格式:interface 接口名称{//抽象方法。。。类要想使用接口,则通过implements来实现接口,并且重写接口的所有抽象方法(子类与父类为extends继承关系,类与接口是implements实现关系)语法格式:class 类名 implements 接口名称{//重写的抽象方法。。。接口的实用代码实例:

2024-05-22 15:10:16 1726 10

原创 JAVA——内部类

当一个事物的内部,还需要另外一个完整的结构进行描述,而这个完整的结构只对外部类进行服务,则就提供了内部类。

2024-05-21 14:49:29 416 9

原创 JAVA——抽象类

被abstract修饰的类被称为抽象类,被修饰的方法称为抽象方法,抽象方法不用给出具体实现(即无方法体)抽象类中可以有其他的普通方法,也可以有属性和构造方法。但是一个类当中如果有抽象方法,那么这个类必须是抽象类,抽象类不能被实例化对象!

2024-05-20 23:42:58 171 5

原创 JAVA——多态

多态是面向对象编程的一个重要特性,实现方式主要体现在重载和重写,以及接口的实现。多态的出现使得调用者对类的使用成本降低,可降低代码的“圈复杂度”,避免使用大量的if-else,可扩展能力强。

2024-05-20 19:10:50 1042 4

原创 JAVA——继承

继承是java的面向对象编程的四大基本特性之一,合理的使用继承,能大大提高程序的开发效率,有效的减少代码的冗杂和重用,让使用者的代码更加清晰并且易于管理。可能有人会想:继承是什么?为什么需要继承?下面就来由我一一解答吧。(1)概念继承机制:它允许程序员在保持原有的类的特性的基础上进行扩展,延伸增加新功能,专门用来进行共性抽取,实现代码复用。

2024-05-20 11:42:41 1001 4

原创 JAVA类和对象

我们知道,java中已经提供了很多现成的类供我们使用,如Scanner类是java中提供的用于扫描输入文本的实用程序类,这个类存在于java.util这个包中,使用import语句如上图一样导入我们的包。static成员是静态成员,静态成员不属于任何的单个实例,而是属于类,被static修饰的成员只有一份,存在方法区(静态区),不属于某个具体的对象,是所有对象。编译器里自带的toString方法是用来打印对象地址的,然后我们给定一个方法toString,调用这个方法的重写打印对象,所以打印出来的就是对象。

2024-05-16 14:53:02 626 4

原创 基础版扫雷游戏的流程

用来统计mine数组被选择坐标(x,y)周围雷的个数,因为都是字符‘0’或字符‘1’,此时需要用到ARCll码值进行计算,俩者相差1,通过周围八个坐标和八个字符‘0’的arcll码值的差来返回。打印show棋盘,行和列的数组打印方式,11*11,外围一圈为空格(不打印),其余全部为‘*’(9*9),再打印显示的行和列。排查9*9里的mine棋盘的雷,需要用到布雷棋盘和显示棋盘,布雷棋盘(mine)隐藏操作,判断雷的位置,显示棋盘(show)显示周围有几个雷,此时需要统计,用到函数GetMineCount。

2023-12-15 14:33:32 963 9

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除