- 博客(22)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 java 集合小游戏 ->武将对战V1.0.0(待完善...)
集合文字小游戏 -> 武将对战1. 项目需求2. 需求分析2.1 建立一个武将对象(编号,姓名,所属地,性别出生年,去世年,武力值)2.2 获取字符串类型的武将数据2.3 拆分武将数据2.4 输出所有武将的信息2.5 寿命最高的武将筛选2.6 武力值最高的武将筛选2.7 男性武力值最低的武将筛选2.8 女性武力值最高的武将筛选2.9 武力值最高的前十名2.10 对战2.10.1 武将选择2.10.2 获取武将信息并计算数值2.10.3 对战回合信息2.10.4 胜负判断2.10.5 对战模块完整代码3
2021-03-29 20:40:16
8127
28
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 数据结构 红黑树
红黑树1.红黑树的概述1.1红黑树和二叉查找树的区别2. 红黑规则3.添加结点的颜色4.添加元素如何保证规则4.1添加后,父结点和兄弟结点都是红色4.2添加后,父结点为黑色4.3添加后,父结点为红色,兄弟结点为黑色1.红黑树的概述红黑树是一种自平衡的二叉查找树,是计算机科学中用到的一种数据结构1972年出现,当时被称之为平衡二叉B树. 1978年被修改为红黑树沿用至今.它是一种特殊的二叉查找树,红黑树的每一个结点都有颜色(红或黑),红黑树不是高度平衡的,它的平衡指的是按照红黑规则来实现的.1.1红
2021-03-27 21:06:47
652
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 java 快速排序的原理和实现
这里写目录标题数组的快速排序1. 快速排序的核心思想2. 核心代码的实现3. 快速排序的完整实现数组的快速排序1. 快速排序的核心思想快速排序的核心思想是递归递归的使用场景:如果能把一个大规模问题,不断的拆解,拆解成小规模问题,并且这些小规模问题的解决方案是相同的,就可以考虑使用递归来完成.快速排序的核心思想是什么此处有待排序的元素 6, 1, 2, 7, 9, 3, 4, 5, 10, 8设定一个基准数:6;先从右往左找,找一个比基准数小的数:5在从左找往右,找一个比基准
2021-03-26 16:55:53
388
原创 Java 多线程基础
多线程1. 多线程概述1.1 多线程1.2 并发和并行1.3 进程和线程2. 多线程的三种实现方式2.1 继承Thread2.2 实现Runnable接口2.3 实现callable接口3. Thread的常用方法3.1 设置获取名字3.2 获取线程对象3.3 睡眠方法3.4 线程的优先级3.5 守护线程4. 线程安全问题4.1 出现的原因4.2 同步代码块4.3 锁对象唯一4.4 同步方法4.5 lock锁4.6 死锁5. 等待唤醒机制6. 阻塞队列6.1 创建方法6.2 添加元素6.3 获取元素6.4
2021-04-06 19:43:58
871
1
原创 java File文件操作
File文件操作1. 概述2. 构造方法3. 绝对路径和相对路径3.1 绝对路径3.2 相对路径4. 创建和删除4.1 创建4.2 删除5. 获取和判断方法5.1 判断类型5.2 判断是否真实存在5.3 获取名字6. File和FileList1. 概述目的:存储数据(文件)描述读写哪个文件2. 构造方法用来描述一个文件夹或文件可以描述一个不是真实存在的文件夹或文件File(String path);File(String parent,String child);File(
2021-04-01 19:13:26
238
原创 数据结构 平衡二叉树
平衡二叉树1. 平衡二叉树的基本概念1.1二叉查找树的问题1.2平衡二叉树的概念1.3平衡二叉树的作用2. 平衡二叉树的左旋右旋2.1 左旋或者右旋的触发时机2.2 左旋的过程2.3右旋的过程2.4平衡二叉树旋转的四种情况2.4.1左左2.4.2 左右2.4.3 右右2.4.4右左1. 平衡二叉树的基本概念1.1二叉查找树的问题在极端的情况下,二叉树就会转换成链表,高度太高,效率变低1.2平衡二叉树的概念任意结点的左子树或右子树的度相差 不超过11.3平衡二叉树的作用通过降低树的高度,从而提高
2021-03-27 19:28:57
859
1
原创 数据结构 二叉树
这里写目录标题二叉树1. 二叉树1.1二叉树的概述1.2基本概念2.二叉查找树2.1数据存储的特点2.2 二叉查找树的出现原因2.3 二叉查找树代码实现二叉树1. 二叉树1.1二叉树的概述树中度小于等于2的树就称为二叉树1.2基本概念根结点(root): 没有父结点,只有子节点的结点称之为根结点父结点: 一个结点有上一级的关系,则称这个结点上一级的结点为该结点的父结点左子结点:一个结点的下级左边的结点称为左子结点右子结点:一个结点的下级右边的结点称为有子结点左子树:一个结点下级左边的
2021-03-27 18:58:00
450
原创 java API的基本使用(Math,System,Object,Objects,BigDecimal)
API的基本使用# 系列文章目录文章目录API的基本使用# 系列文章目录1. API的基本使用2. Math类3. System类4 Object类4.1 toString方法4.2 equals方法5. Objects类6. BigDecimal1. API的基本使用API: 应用程序接口,JDK中提供的类是JDK官方所提供的类的说明书如何查看?查看这个类所在包,如果是java.long包在使用的时候不需要导包查看这个类所对应的继承关系查看这个类的描述查看这个类的 开始jdk版本
2021-03-26 16:13:32
392
原创 java String(字符串),StringBuilder(字符串缓冲区),StringJoiner(字符串拼接 JDK1.8之后)
String字符串1.String1.1 String概述String类就是用来表示字符串的特点:字符串字面值(“abc” ,“今天天气真好” , “123”) 都是String类的对象一旦被创建就不可以更改1.2 String类的构造方法方法名说明public String()创建一个空白的字符串对象,不含有任何内容public String(char[ ] chs)根据字符数组的内容,来创建字符串对象(把一个字符数组转换成字符串)public St
2021-03-26 15:30:47
471
原创 java 内部类
内部类1. 代码块概述: 使用{}包裹起来的代码就是代码块局部代码块位置:定义在方法中作用:限定变量的生命周期,让变量说占用的内存及早释放,提高内存的利用率public class MethodCodeBlockDemo { public static void main(String[] args) { int a = 10;//如果不加代码块,此时变量a,是定义在方法当中,在整个main方法中都是有效的. System.out.println(
2021-03-26 14:14:18
298
原创 java 方法参数传递的问题
方法的参数问题数据类型的划分基本数据类型引用数据类型1.1 引用数据类型作为方法参数引用数据类型: 数组,类,接口,枚举public class Demo01 { // 程序的入口 public static void main(String[] args) { Person p = new Person(); p.name = "abc"; System.out.println(p.name); // "ab
2021-03-26 11:10:25
311
原创 java 面向对象的基础
面向对象的基础1.类和对象类:类别,用来区分一类事物如:电脑,汽车,人,动物,等等…每类事物都具有: 属性和行为属性: 就是该事物所具有的特征(成员变量)行为:就是该事物可以做的事(实现的具体功能)定义类的思路就是定义一个类的属性和行为public class Student { private String name ; // 定义了name属性,并且的私有的 private int age; // 定义了age属性 public void
2021-03-26 10:53:52
363
原创 java 继承extends
继承1.1继承的概述继承是面向对象的三大特征之一,可以使得子类具有父类的属性和方法,还可以在类中重新定义,追加属性和方法.格式:public class 子类名 extends 父类名{}范例:public class Zi extends Fu{}Fu : 是父类,也被称作基类,超类.Zi : 子类,也称作派生类子类的特点子类可以有父类的内容子类还可以有自己特有的内容1.2继承的好处和弊端继承的好处提高了代码的复用性(多个类相同的成员可以放到同一个类中
2021-03-25 21:34:34
347
原创 java 简单学生管理系统的实现
学生管理系统项目演示-------欢迎来到学生管理系统--------添加学生删除学生修改学生查看所有学生退出请输入你的选择学生管理系统思路定义学生类主界面的代码编写添加学生的代码编写查看学生的代码编写删除学生的代码编写修改学生的代码编写学生类的编写学生类:Student成员变量学号:sid姓名:name年龄:age生日:birthday构造方法无参构造带四个参数的构造成员方法: 每个成员变量对于给出get/set方法packag
2021-03-25 21:33:21
760
原创 java 第八章 > 字符串 API StringBuilder
字符串APIAPI:应用程序编程接口Java API:JDK中提供的各种功能的Java类打开点击显示页签搜索看在哪个包看描述看构造方法看成员方法键盘录入字符串 public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入:"); String s = sc.nextLine();
2021-03-25 21:32:36
344
原创 java 第四章 > Idea 数组
面向对象的基础面向对象和面向过程的思想对比面向过程编程是一种以过程为中心的编程思想,实现功能的每一步,都是自己实现的面向对象编程(oop)是一种以对象为中心的编程思想,通过智慧对象实现具体的功能-对象客观存在的事物(万物皆对象)类和对象类是对现实生活中一类具有共同书写和行为的事物的抽象组成属性例如,姓名,年龄…行为该事物能做的事例如,学习,java编程开发类的定义类中,方法的外面去掉Static关键字步骤
2021-03-25 21:32:03
587
原创 java 第七章 > 面向对象的基础(封装)
面向对象的基础面向对象和面向过程的思想对比面向过程编程是一种以过程为中心的编程思想,实现功能的每一步,都是自己实现的面向对象编程(oop)是一种以对象为中心的编程思想,通过智慧对象实现具体的功能-对象客观存在的事物(万物皆对象)类和对象类是对现实生活中一类具有共同书写和行为的事物的抽象组成属性例如,姓名,年龄…行为该事物能做的事例如,学习,java编程开发类的定义类中,方法的外面去掉Static关键字步骤
2021-03-25 21:30:51
309
原创 java 第六章 > Debug调试,进制,二维数组
Debug概述史供程序员使用的程序调试工具,它可以用于查看程序的执行流程,也可以用于最终程序执行过程来调试程序操作流程断点调试加断点选择要设置的端点代码行,在行号的取余后面单机鼠标左键如何运行右键选择Debug模式运行如何看看Debug窗口点哪里Step Into 或F7如何停止点Stop删除点红点,或停止按钮下面按钮进制进制介绍进制:指进位制,使人们规定的一整进位方式常见进制:二进制,八进制,十进制计算机数据在底层都是以
2021-03-25 21:28:03
412
原创 java 第五章 > 方法的简单介绍
IDEA项目结构progect(项目)module(模块)package(包)class(类)操作步骤创建progect项目创建module模块创建package包创建class类在类中编写代码完成编译运行快捷键快速生成主方法psvm + 回车快速生成输出语句sout + 回车打开/隐藏 工程目录结构alt + 1打开/隐藏 控制台alt + 4格式化代码ctrl + alt + L代码修正提示alt +
2021-03-25 21:26:11
415
1
原创 java 第三章 > switch语句,for循环,while循环
switch语句格式switch(表达式){ case值1: 语句体1; break; case值2: 语句体2; break; ... default: 语句体n+1; break;}格式说明表达式:(将要匹配的值)取值为byte,short,int,char,jdk5以后的可以使枚举,jdk7以后可以使String.case:后面跟的是要和表达式进行比较的值
2021-03-25 21:25:43
637
原创 java 第二章 > 类型转换,运算符,分支语句
类型转换不同类型的数据转换类型转换的分类隐式转换取值范围最小的数据,给取值范围最大的类型赋值,可以直接赋值int a = 10 double b = a输出结果为10.0特别关注byte short char 三种一起运算会统一成 int强制转换把一个表示数据范围大的数值或变量赋值给另一个表示范围小的变量目标数据类型变量名 = (目标数据类型)值或变量;public class demo{ public static void main(S
2021-03-25 21:16:58
400
原创 java 第一章 > java背景,数据类型,键盘录入,标识符
背景介绍java:语言:人与人交流沟通的表达方式计算机语言:人与计算机之间进行信息交流沟通的一种特殊语言SUN公司1995年推出詹姆斯·高斯林版本:Java SE:标准版,用于桌面应用的开发桌面应用:UI人机交互目的:为JEE打基础Java ME:用于嵌入式消费电子设备(退出市场)Java EE:用于web方向的网站开发网页:仅仅用于数据展示在用户面前,跟后台服务器没有交互(数据不真实)网站:通过跟后台服务器的交互,将查询的真实数据通过网页展示出来网站=服务器+网页
2021-03-25 21:15:22
362
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人