自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++|递归

//用递归求一个正数的开平方,精确到小数点后3位 #include <stdio.h>double sq(double d, double r1, double r2){ double diff = ((r1 + r2) * (r1 + r2)) / 4.0 - d; if (diff >= -0.000001 && diff <= 0...

2021-01-18 16:14:35 116

原创 C++|类的友元

作用:不在类中的函数可以通过对象名访问类的私有和保护成员分为友元函数与友元类友元函数:友元函数:不属于任何类的函数声明为当前类的友元(一个普通的函数)友元成员:其他类的成员函数声明为当前类的友元友元类一个类能访问另一个类的私有成员不具有传递性...

2021-01-18 16:14:23 215 1

原创 C++|数组

什么是数组一组同类型数据的有序集合/一段连续被等分的内存空间一些名词数组单元: 数组中的每个变量数组元素: 数组单元的数据值数组名: 这些同类变量聚合后统一的名字,首元素的内存地址如何使用先声明,后使用引用: 只能引用数组元素,而非整个数组作为函数参数时: 传送的是数组首地址(数组名)存储地址是连续的二维数组存储: 按行存储初始化static int a[10]={0...

2021-01-18 16:13:45 131 1

原创 C++|对象的生存期

四种存储类别auto:局部变量时默认类别;动态生存期static:可用于全局/局部;静态生存期extern:全局变量默认类别register:寄存器类别,分配内存不够时转化为auto静态生存期(全局寿命)全局变量所具有的生存期具有全局寿命函数内部想要有全局寿命,需要加上staticstatic int i;动态生存期(局部寿命)函数块中声明的,没有加static的对...

2021-01-18 16:08:30 240

原创 C++|BOOL

与0的比较假设BOOL型变量名为flag,它与零值比较的标准If语句为:if(flag)//表示flag为真,if(!flag)//表示flag为假其他的都属于不良风格:if(flag == TRUE)if(flag == FALSE)if(flag == 0)if(flag == 1)...

2021-01-18 16:08:12 97

原创 C++|多态性

什么是多态接口有多种形态,能根据操作环境的不同采用不同的处理方式编译时多态(静态绑定)shape *ps;//静态类型shape*shape *ps=new circle;//静态类型shape*作用: 根据类型匹配等特征确定某一个同名函数到底是要调用哪一段函数原理: 代码中声明的类型=对象的静态类型通过: 函数重载/运算符重载基类指针指向派生类,调用时仍然是基类函数gstudent s2;//子类对象声明ps=& s2;//!!基类指针可以指向派生类对象!!ps-&gt

2021-01-18 16:07:43 67

原创 C++|动态分配内存

动态分配内存建立了一个基本类型变量int *a=new int(2);等价于int *a;//a是基本int型变量a=new int(2);//用2初始化动态分配了用于存int数据的内存空间,并将初值2存入空间,然后将首地址赋给指针aint *a=new int();//括号为空,表示用0对该对象初始化delete a;//指针名,释放指针所指向的内存空间建立了一个类的对象...

2021-01-18 16:06:30 209

原创 数据结构|串

串的基本概念串:0个或多个字符组成的有限序列串可以看作线性表的一种串的长度:所含字符的个数串相等:长度+对应字符子串:子序列串和线性表的异同?串的存储结构因为逻辑结构与线性表相同,故存储结构也和线性表相同字符被依次存放在一组连续的存储单元里一般来说,一个字节可以表示一个字符计算机内存:按字编址,字(存储单元)》字节...

2020-12-30 10:07:16 333

原创 java网课|collection下的set

P264 HashSet集合介绍Set接口:extends Collection不包含重复元素没有索引不能使用普通for遍历HashSet类:implements Set底层:哈希表===》查询速度很快!不包含重复元素 【当add进重复元素时,第二次那个会默认不存进去】没有索引不能使用普通for遍历 用迭代器/增强for遍历//迭代器Iterator<Integer>it=set.iterator();while(it.hasNext())

2020-12-15 19:45:14 101

原创 java网课|collection下的list集合

P260 list集合介绍collection下面的两个孩子,list和setlist继承了collection,有序集合,有索引,允许有重复有序:存储和取出的顺序一直有索引:包含了一些带index的方法list中带索引的方法(注意防止越界异常)...

2020-12-15 18:59:21 87

原创 数据结构|查找

树表的查找复习线性表查找的三种方法 顺序/折半/分块 折半:效率most,but需要关键字有序,不适合链表 插入删除操作不方便若要对动态查找表(会进行插入删除的表)进行查找:二叉排序树(二叉搜索树)是啥?二叉树--------》对结点值的约束--------》二叉排序树左子树上所有节点关键字**<=根节点关键字右…>=**…二叉排序树的结点类型声明:typedef struct node{ KeyType key;//关键字项 In

2020-12-14 19:21:31 938

原创 java网课|Iterator接口

P242 Iterator接口介绍(迭代器)之前学了有很多种集合存储的元素不太一样取出元素的方式也不太一样=迭代器:一种通用的用来取出元素的方法迭代器方法Boolean hasNext()E next()返回迭代的下一个元素/取出集合种的下一个元素Iterator迭代器,是一个接口,无法直接使用,需要使用Iterator【接口的实现类对象】,获取实现类的方式比较特殊Collection接口中有一个方法,叫iterator(),返回的是迭代器的实现类对象Iteratoritera

2020-12-11 09:50:10 129

原创 java网课|缓冲流&转化流&序列化&网络编程

啥事缓冲流?使用基本的字节输入流读取文件:FileInputStreamint len=fis.read();使用字节缓冲输入流读取文件呢?给基本的字节输入流增加一个缓冲区【数组】提高基本的字节输入流的【读取效率】BufferedInputStream(new FileInputStream());int len=fis.read();啥是转化流?字符《==》字节之间的相互转换字符==》字节:(编码)OutputStreamWriter字节==》字符:(解码)Input

2020-12-11 09:35:47 73

原创 java网课|字节流&字符流

理解一下i和o?i:input输入o:output输出流:数据,1字符=2字节,1字节=8个二进制位输入与输出:输入–硬盘中的数据读取到内存中使用输出–内存中的数据写入到硬盘中存储内存只能临时存储,硬盘才能永久存储【剩下笔记见手写】...

2020-12-11 09:26:31 82

原创 java网课|File类&递归

关于递归看上面,main中会持续执行a()方法a会在栈内存中一直调用a方法栈中有很多很多个–》无数个a方法当太多时????栈内存溢出!小TIPS栈内存中啥样的?来看看递归求和用循环:不会在栈内存中产生多个方法,不占用多余的内存用递归:sum中套sum,会有很多个sum在栈内存中,太浪费了!递归遍历多级目录怎么做?要先学习File类的用法!打开一个路径下的文件:getAllFile(file)方法打开当前路径下所有文件对目录进行遍历:isDirector

2020-12-11 09:16:53 80

原创 java网课|等待与唤醒&线程池

啥是等待与唤醒?线程之间的通信举个栗子(包子铺生产者(包子铺)和消费者(吃货)都是一个线程类????可以继承Thread设置线程任务Run生产者:run–》生产包子消费者:run–》吃包子最后在main()中要干嘛?1、创建包子对象2、创建包子铺进程,开启3、创建吃货进程,开启接上一讲,线程–》线程池,线程池是啥捏?程序第一次启动时会创建多个线程保存到一个集合中想要使用线程的时候: 直接从集合中取出来使用⚠⚠【还不太懂】...

2020-12-11 08:57:37 53

原创 java网课|Map&线程

一、MapMap是啥一一对应的关系==》映射有一些集合中的元素就是一一对应的 如:IP地址与主机名/身份证号与个人Map用在哪元素关系为一一对应时Map怎么用Map的常用子类HashMap: 存储数据采用的哈希表结构 存储顺序不能保证一致LinkedHashMap: 存取数据采用的哈希表+链表结构 存储顺序可以保证一致Map集合遍历键找值创建Map集合对象并放入值Map<String,Interger>map=new

2020-12-11 08:48:00 166

原创 java网课|StringBuilder&包装类

StringBuilder原理复习一下String类:字符串是常量它们的值在创建之后【不能更改】可以理解成一个被final修饰的数组,所以不能更改想要进行字符串相加:"a"+"b"+"C"//用加号连接即可StringBuilder类呢?与String类最大的不同:可以改变长度可看作一个没有被final修饰的数组,当容量不够时,【自动扩容】!包装类为啥会有这个东东?加粗样式...

2020-12-11 07:47:36 72

原创 java|数组tips

数组的特点一种引用数据类型数组中的数据类型必须统一数组的长度不可改变数组的初始化动态初始化(告诉长度1、数据类型[]数组名称=new 数据类型[数组长度];静态初始化(直接告诉内容数据类型【】数组名称=new 数据类型【】{}关于格式是否可省略静态初始化:1、省略格式,无new int,不能拆分成两个步骤2、标准格式,有new int,可以拆分成两个步骤动态初始化:1、可以拆分成两个步骤java的内存需要划分成5个部分栈(Stack):堆(heap):====

2020-12-10 13:56:25 61

原创 java网课|类和对象

P98 类和对象的关系分别是什么类:图纸一类事物的描述抽象的对象:实物一类事物的实例具体的实例化:即创建对象P99 类的定义成员变量:直接定义在类当中,在方法外面如果没有赋值,会有一个默认值·string==>null·int==>0成员方法:不要写static关键字P102 一个对象的内存图源代码:自我小结:方法都进栈stack成员变量都在堆heap中成员方法的地址在堆heap中成员方法的内容在方法区(Method

2020-12-10 13:55:50 115

原创 java网课|成员变量和局部变量的区别

局部和成员变量的区别(共5个,前3个是重点)✳定义的位置不一样局部:【方法】内部成员:【类】中,【方法】外部✳作用范围不一样局部:【该方法】中可以使用,其他方法不行成员:【整个类】都可以✳默认值不一样局部:【无】默认值,必须手动赋值(如果要用的话成员:【有】默认值,规则和数组一样方法的参数也是【局部】变量public void method(int param){}//param是局部变量!!但是可以不用赋值就直接用因为参数再方法调用的时候必然会被赋值!(妙啊!内存位置不

2020-12-10 13:55:19 54

原创 java网课|标准类&API

P113 定义一个标准的类满足四个部分:1、所有成员变量都是private2、每一个成员变量都有getter/setter3、无参构造方法4、全参构造方法标准的类叫做Java Beanpublic class Student { private String name; private int age; public Student() { } public Student(String name, int age) { this.n

2020-12-10 13:54:59 55

原创 java网课|内部类

P201 内部类什么是内部类?一个事物包含另一个事物e.g.身体和心脏/汽车和发动机内部类的分类有哪些?成员内部类局部内部类(包含匿名内部类成员内部类… class A{… class B{}… void method(){}}在方法外,故称为外部类⚠内部类可以随意访问外部,但外用内,需要内部类对象在内部类中可以直接访问外部类的private成员在文件中,外部类和内部类都会显示如:Body.class/Body$Heart.class...

2020-12-10 13:54:46 69

原创 java网课|字符串2.0

P133 字符串概述和特点正式认识一下String~java.lang包下所有的双引号字符串,都是String类对象,没有new也是在这里插入代码片字符串特点是常量,创建之后不可更改因为不可更改,可以被共享字符串相当于char[]字符数组P134 字符串的构造方法和直接创建常见3+1种方式三种构造方法: - public String(); - public String(char[]array);//根据字符数组的内容,创建对应的字符串 - public String

2020-12-10 13:54:17 117

原创 JAVA课堂|字符串

课本第5章 字符串概述String类是一个自定义类型,是构造出来的类型,与基本数据类型不同基本数据类型:byte\short\int\long\char\float\double\boolean自定义的数据类型/类型–叫做类String类是JDK中定义好的一个类,可以直接使用字符串的操作+:两个字符串相连接字符串和基本类型变量做加法–》将基本类型转换为字符串型后进行连接操作比较字符串是否相等:equals()方法: a.equals(c);//a和c作比较...

2020-12-10 13:54:04 39

原创 java网课|static

P143 静态static关键字概述不同对象有一样的成员变量“共有信息”“多个对象共享同一份数据”同一个班的同学们加了static的,内容不再属于对象自己而是属于类本类的对象,共享同一份成员方法用static修饰:该方法属于类了,不属于对象非静态方法–》需要先创建对象区分静态与非静态:直接类名称调用!静态方法可以访问静态变量静态不能直接访问非静态因为:内存中 先 有静态内容,后 有的非静态内容静态内存图P147 静态代码块只要用到该类,静态代码块执行,且只唯

2020-12-10 13:53:27 263 1

原创 java网课|包装类

P233 包装类的概念因为基本类型的数据没有对应的方法来操作这些数据????可以用一个类把基本类型的数据包装起来????可以对其进行一些方法了~int-》Integerdouble-》Doublechar-》characterP234 如何包装使用构造方法装箱:把基本类型的数据-》包装类拆箱:包装类-》基本类型的数据 //构造方法实现装箱 Integer int1=new Integer(1);//画横线说明方法过时了 System

2020-12-10 13:52:07 88

原创 java网课|collection&泛型

P238 collection集合概述集合与数组有什么区别?数组:长度不可改变存放基本数据类型的值都是同一种类型的集合:长度可以改变存储的是对象对象的类型可以不一样int[]a=new int[2];Student[]arr=new Student[3];ArrayList<Student><String><Integer>P239 集合框架Vector集合/ArrayList集合/LinkedList集合/如何使用集合存储数据?

2020-12-10 13:51:37 110

原创 JAVA网课|字符串

P133 字符串概述String类在java.lang包下==》故不需要导包所有的双引号字符串,都是String类对象字符串的特点内容永不可变字符串可以共享使用效果相当于char[]字符数组,底层原理是byte[]字节数组P134 如何创建字符串P137 字符串的获取相关方法concat():拼接后,中间无空格分开类似于+charAt():获取某个索引处的字符indexOf(String str):查找首次出现的索引位置,如果没有返回-1P138 字符串的截取方法

2020-12-09 10:06:50 54

原创 java网课|final&权限修饰符

P195 final关键字概念常见的四种用法:修饰一个类:修饰一个方法:不能覆盖重写父类当中final的方法

2020-12-08 20:11:07 77

原创 java网课|多态

P185 多态的概述多态性的前提:extends继承/implements实现究竟什么是多态性?如:人类–》学生类小明是【学生类】对象小明既是【学生】也是【人类】有【多种形态】====》对象的多态性P186 多态的格式与使用格式:**父类名称 对象名 = new 子类名称();接口名称 对象名 = new 实现类名称(); **...

2020-12-07 20:04:20 118

原创 java网课|接口

P171 接口概念**是一种【公共的规范标准】 **只要符号标准,就可以【大家通用】==》为我们带来了便利性P172 接口的定义基本格式是多个类的公共规范一种引用数据类型,最重要的内容是:抽象方法如何定义呢?public interface 接口名称{ //接口内容}ps:class换成interface之后,编译生成的字节码文件仍然是.java—>.class接口中可以包含什么内容呢?Java7:常量抽象方法java8:以上默认方法静态方法java9:以

2020-12-06 21:40:33 287

原创 java网课|抽象

P165 抽象的概念子类要用父类中的方法,但是每个子类又各有特点如:图形计算面积的方法—正方形/三角形等各有不同动物吃东西的方法—猫狗各有不同如果父类当中的方法不确定如何进行{}中的方法体实现,这就是一个抽象方法P166 抽象方法和抽象类的格式在父类中这么写:public abstract class Animal{ public abstract void eat();//无大括号,直接分号结束 public void normalmethod(){//一个普通的成员方法

2020-12-04 20:18:52 91

原创 java网课|继承和抽象类

P148 继承的概述没有继承,就没有多态!—》继承的重要性!继承主要干什么:共性抽取!!父类?==》基类、超类P149 继承的格式is-a关系,“子类可以被当作父类看待”如:父类是员工,子类是讲师==》“讲师就是一个员工”public class 子类名称 extends 父类名称{}...

2020-12-04 19:05:10 140

原创 java网课|内部类

P201 内部类什么是内部类?一个事物包含另一个事物e.g.身体和心脏/汽车和发动机内部类的分类有哪些?成员内部类局部内部类(包含匿名内部类成员内部类… class A{… class B{}… void method(){}}在方法外,故称为外部类⚠内部类可以随意访问外部,但外用内,需要内部类对象在内部类中可以直接访问外部类的private成员在文件中,外部类和内部类都会显示如:Body.class/Body$Heart.class...

2020-12-03 19:33:57 46

原创 java网课|匿名对象&Random&对象数组

P119 匿名对象的使用什么是匿名对象?new 类名称();没有左边的名字和=//匿名对象new Person();2个new 2个对象 ==》调用showName时不会显示赵又廷!什么时候使用好呢?该对象只需要使用唯一的一次,就可以用匿名对象下次想再用,必须创建一个新对象P120 匿名对象作为方法的参数/返回值new对象和调用方法直接一起用形参处直接写(Scanner sc)如何做返回值呢?不再需要scanner sc=new…return…return后面带上ne

2020-11-15 22:39:00 179

原创 java网课|Scanner

P115 Scanner的概述及API文档的使用SCANNER类的功能:实现键盘输入数据看 包看 构造方法看 成员方法引用类型是什么?==》除基本类型以外的类如何使用呢?1、导包 java.lang包下的内容不需要导包 例如String类的导包语句不用写!!!但是其他包需要嗷!!2、创建 类名称 对象名=new 类名称();3、使用 对象名.成员方法名()P116创建:Scanner sc=new Scanner(System.in);/

2020-11-09 23:21:55 128

原创 Java网课|api&scanner

p114 api什么是api即现成的类,提供的类如:string是已有类Java.lang包中含有从jdk中查找需要的类Jdk api中查找怎么找?看包路径看构造方法看方法摘要p115 scanner类键盘输入功能:实现键盘输入数据到程序中scanner是一种引用类型引用类型的一般使用方法:导包如果需要使用到目标类和当前类在同一个包下可以省略包布鞋只有java.lang包下的内容不需要导包,其他的包都需要import语句创建即创建一个类,对象类名称 对象

2020-11-03 18:05:19 118

原创 数据结构|栈

顺序栈的类型声明//顺序栈的类型声明typedef struct { ElemType data[MaxSize];//maxsize是元素个数的最大数,elemtype是元素类型,data是数组名 int top;//栈顶指针,存放栈顶元素在data数组中的下标}SqStack;//顺序栈类型是sqstack栈与顺序栈采用顺序存储结构的栈称为顺序栈栈到顺序栈可以直接映射顺序栈是一块连续的存储空间顺序栈的基本运算//初始化栈void InitStack(SqStack *&am

2020-11-02 21:20:42 200

原创 数据结构|线性表

是指具有相同特性的数据元素的一个有限序列长度所含元素的个数元素成线性关系一般表示(a1,a2,a3…)特性有穷性一致性序列性:所有元素的相对位置是线性的,存在唯一的开始元素、终端元素每个元素有唯一的前驱元素、后继元素各元素在线性表中的位置只取决于序号线性表中可以存在两个值相同的元素线性表的作用直接用来存放数据基本运算ListLength(L)=5...

2020-11-02 19:32:14 264

空空如也

空空如也

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

TA关注的人

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