![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
学习考研
文章平均质量分 58
孤鸿末子
这个作者很懒,什么都没留下…
展开
-
数据库的查询操作
1. 基础查询1.语法:select字段列表.from表名列表.where条件列表group by分组字段having分组之后的条件order by排序limit分页限定基础查询多个字段的查询去除重复计算列起别名原创 2020-07-24 22:45:40 · 1744 阅读 · 0 评论 -
数据库表中记录的基本操作
d’s’f原创 2020-07-14 21:28:09 · 472 阅读 · 0 评论 -
数据库表的CRUD操作
1. DDL操作表的CRUD操作R(Retrieve) :查询C(Create):创建U(Update) :修改D(Delete) :删除①查询show tables ;查询某个数据库中所有的表名称。查看mysql的数据表:use mysql;show tables;desc 表名; 查询表结构②创建语法:create table表名(列名1数据类型1,列名2数据类型2,列名n数据类型n);注意:最后一列,不需要加逗号(,)数据库类型:int :整数类型原创 2020-07-10 19:43:26 · 540 阅读 · 0 评论 -
数据库的CRUD操作
1. MySQL通用语法什么是SQL ?structured Query Language :结构化查询语言其实就是定,义了操作所有关系型数据库的规则。每一种数据库操作的方式存在不一样的地方,称为“方言”。SQL通用语法SQL语句可以单行或多行书写,以分号结尾。可使用空格和缩进来增强语句的可读性。MySQL数据库的SQL 语句不区分大小写,关键字建议使用大写。3种注释单待注释: – 注释内容 或 # 注释内容(mysql特有)*多行注释: / * 注释 * /2. SQL分类原创 2020-07-10 17:57:47 · 1074 阅读 · 0 评论 -
TCP协议
1. 概述TCP通信能实现两台计算机之间的数据交互,通信的两端,要严格区分为客户端( Client )与服务端( Slerver )。两端通信时步骤:1.服务端程序,需要事先启动,等待客户端的连接。2.客户端主动连接服务器端,连接成功才能通信。服务端不可以主动连接客户端。在Java中,提供了两个类用于实现TCP通信程序:1.客户端: java.net.Socket类表示。创建Socket对象,向服务端发出连接请求,服务端响应请求,两者建立连接开始通信。2.服务端: java.net. Ser原创 2020-07-06 21:35:47 · 246 阅读 · 0 评论 -
网络通信概述
1. 软件结构C/S结构:全称为Clieht/Server结构,是指客户端和服务器结构。常见程序有QQ、迅雷等软件。B/S结构:全称为Browser/Server结构,是指浏览器和服务器结构。常见浏览器有谷歌、火狐等。两种架构各有优势,但是无论哪种架构,都离不开网络的支持。网络编程,就是在一定的协议下,实现两台计算机的通信的程序。2. 网络通信协议●网络通信协议:通过计算机网络可以使多台计算机实现连接,位于同一一个网络中的计算机在进行连接和通信时需要遵守一定的规则,这就好比在道路中行驶的汽原创 2020-07-06 20:30:30 · 602 阅读 · 0 评论 -
网络编程
1. 网络通信协议2. TCP协议3. 综合案例:文件上传4. 模拟BS服务器案例原创 2020-07-06 20:14:56 · 93 阅读 · 0 评论 -
打印流
java. io. PrintStream:打印流PrintStream为其他输出流添加了功能,使它们能够方便地打印各种数据值表示形式。PrintStream特点;只负责数据的输出,不负责数据的读取与其他输出流不同,PrintStream永远不会抛出IOException.有特有的方法,print, printlnvoid print(任意类型的值)void println(任意类型的值并换行)构造方法:PrintStream(File file):输出的目的地是一个文件Pri原创 2020-07-03 11:46:55 · 103 阅读 · 0 评论 -
序列化流
1. 序列化与反序列化把对象以流的方式,写入到文件中保存,叫写对象,也叫对象的序列化。把文件中保存的对象,以流的方式读取出来,叫做读对象,也叫对象的反序列化2. 对象的序列化流:ObjectOutputStreamjava. io. objectOutputStream extends OutputStreamobjectOutputStream :对象的序列化流作用:把对象以流的方式写入到文件中保存构造方法:objectOutputStream(OutputStream out) 创原创 2020-07-03 11:13:07 · 1463 阅读 · 0 评论 -
转换流
1. 字符编码和字符集字符编码: 计算机中储存的信息都是用二进制数表示的。而我们在屏幕上看到的数字、英文、标点符号、汉字等字符是二进制数转换之后的结果。按照某种规则,将字符存储到计算机中,称为编码。将存储在计算机中的二进制数按照某种规则解析显示出来,称为解码。比如说,按照A规则存储,同样按照A规则解析,那么就能显示正确的文本符号。反之,按照A规则存储,再按照B规则解析,就会导致乱码现象。编码: 字符(能看懂的)–>字节(看不懂的)解码: 字节(看不懂的)–>字符(能看懂的)字原创 2020-07-03 00:24:13 · 105 阅读 · 0 评论 -
缓冲流
1. 缓冲流的原理今天我们要见识一些更强大的流。比如能够高效读写的缓冲流,能够转换编码的转换流,能够持久化存储对象的序列化流等等。这些功能更为强大的流,都是在基本的流对象基础之上创建而来的,就像穿上铠甲的武士样,相当于是对基本流对象的一种增强。2. BufferedOutputStream:字节缓冲缓冲流,也叫高效流,是对4个基本的FileXxx流的增强,所以也是4个流,按照数据类型分类:字节缓冲流: BufferedInputStream,BufferedoutputStream字符缓冲流:原创 2020-07-02 20:22:54 · 180 阅读 · 2 评论 -
Properties集合
1. 使用Properties集合存储数据java. util. Properties集合extends Hashtable<k,v> implements Map<k, v>Properties类表示了一个持久的属性集。Properties 可保存在流中或从流中加载。Properties集合是- -个唯一-和I0流相结合的集合可以使用Properties集合中的方法store,把集合中的临时数据,持久化写入到硬盘中存储可以使用Properties集合中的方法load,把硬原创 2020-07-02 15:18:20 · 141 阅读 · 0 评论 -
I/O字符流
当使用字节流读取文本文件时,可能会有一一个小问题。就是遇到中文字符时,可能不会显示完整的字符,那是因为一个中文字符可能占用多个字节存储。所以ava提供一些字符流类,以字符为单位读写数据,专门用于处理文本文件。1. 字符输入流java. io. Reader:字符输入流,是字符输入流的最顶层的父类,定义了一-些共性的成员方法,是- -个抽象类共性的成员方法:int read() 读取单个字符并返回。int read(char[] cbuf)- -次读取多个字符,将字符读入数组。void clo原创 2020-06-29 17:15:41 · 122 阅读 · 0 评论 -
I/O字节流
1. 概念和分类一切文件数据(文本、图片、视频等)在存储时,都是以二进制数字的形式保存,都一个一个的字节,那么传输时一样如此。所以,字节流可以传输任意文件数据。在操作流的时候,我们要时刻明确,无论使用什么样的流对象,底层传输的始终为二进制数据。2. 字节输出流java. io. outputStream:字节输出流此抽象类是表示输出字节流的所有类的超类。定义了一些子类共性的成员方法:public void close() :关闭此输出流并释放与此流相关联的任何系统资源。public原创 2020-06-27 17:07:51 · 158 阅读 · 0 评论 -
过滤器
在上面那个文件搜索的练习中,我们可以使用过滤器采实现在File类中有两个和ListFiles重载的方法,方法的参数传递的就是过滤器File[] listFiles(FileFilter filter)java. io. FileFilter接口:用于抽象路径名(File对象)的过滤器。作用:用来过滤文件(File对象)抽象方法:用来过滤文件的方法boolean accept(File pathname) 测试指定抽象路径名是否应该包含在某个路径名列表中。参数:File pathna原创 2020-06-27 11:21:08 · 106 阅读 · 0 评论 -
递归
1. 递归的概念递归:指在当前方法内调用自己的这种现象。递归的分类:递归分为两种,直接递归和间接递归。直接递归称为方法自身调用自己间接递归可以A方法调用B方法, B方法调用C方法, C方法调用A方法。●注意事项:递归-定要有条件限定,保证递归能够停止下来,否则会发生栈内存溢出。在递归中虽然有限定条件,但是递归次数不能太多。否则也会发生栈内存溢出。构造方法,禁止递归ss...原创 2020-06-27 10:29:24 · 163 阅读 · 0 评论 -
File类
1. File类概述 java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建、查找和删除等操作。java把电脑中的文件和文件夹(目录)封装为了一个File类,我们可以使用File类对文件和文件夹进行操作我们可以使用File类的方法创建一个文件/文件夹删除文件/文件夹获取文件/文件夹判断文件/文件夹是否存在对文件夹进行遍历获取文件的大小File类是一个与系统无关的类 , 任何的操作系统都可以使用这个类中的方法重点:记住这三个单词file:文件dire原创 2020-06-23 11:28:33 · 102 阅读 · 0 评论 -
File类与IO流
01. File类02. 递归03. 过滤器04. IO字节流05. IO字符流06. Properties集合07. 缓冲流08. 转换流09. 序列化流10. 打印流原创 2020-06-22 22:36:33 · 116 阅读 · 0 评论 -
Lambda表达式
1. 函数式编程思想概述在数学中,函数就是有输入量、输出量的一套计算方案,也就是”拿什么东西做什么事情。相对而言,面向对象过分强调“必须通过对象的形式来做事情”,而函数式思想则尽量忽略面向对象的复杂语法一强调做什么 ,而不是以什么形式做。面向对象的思想:做一件事情,找一个能解决这个事情的对象,调用对象的方法,完成事情.函数式编程思想:只要能获取到结果,谁去做的,怎么做的都不重要,重视的是结果,不重视过程2. 冗余的Runnable代码当需要启动一个线程去完成任务时,通常会通过java. l原创 2020-06-22 22:30:09 · 163 阅读 · 0 评论 -
线程池
1. 线程池的概念和原理我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题:如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了 ,这样频繁创建线程就会大大降低系统的效率,.因为频繁创建线程和销毁线程需要时间。那么有没有一种办法使得线程可以复用,就是执行完一个任务,并不被销毁,而是可以继续执行其他的任务?在Java中可以通过线程池来达到这样的效果。线程池:其实就是一个容纳多个线程的容器,其中的线程可以反复使用,省去了频繁创建线程对象的操作,无需反复创建线程原创 2020-06-22 14:12:10 · 124 阅读 · 0 评论 -
等待唤醒机制
始释放原创 2020-06-21 23:29:28 · 334 阅读 · 0 评论 -
线程同步机制
1. 线程安全问题lll原创 2020-06-19 11:43:25 · 242 阅读 · 0 评论 -
多线程
1. 并发与并行并发:指两个或多个事件在同一个时间段内发生。并行:指两个或多个事件在同一时刻发生(同时发生)。2. 线程与进程进程:是指一个内存中运行的应用程序,每个进程都有一个独立的内存空间,一个应用程序可以同时运行多个。进程;进程也是程序的一次执行过程,是系统运行程序的基本单位;系统运行一个程序即是一个进程从创建、运行到消亡的过程。线程:线程是进程中的一个执行单元,负责当前进程中程序的执行, -个进程中至少有一个线程。一个进程中是可以有多个线程的,这个应用程序也可以称之为多线程程序。简原创 2020-06-17 23:01:45 · 504 阅读 · 1 评论 -
异常
1. 异常的概念异常,就是不正常的意思。在生活中:医生说,你的身体某个部位有异常,该部位和正常相比有点不同,该部位的功能将受影响.在程序中的意思就是: 异常:指的是程序在执行过程中,出现的非正常的情况,最终会导致JVM的非正常停止。在Java等面向对象的编程语言中,异常本身是一个类,产生异常就是创建异常对象并抛出了一个集常对象。Java处理异常的方式是中断处理。异常指的并不是语法错误,语法错了,编译不通过,不会产生字节码文件,根本不能运行.2. 异常的分类异常机制其实是帮助我们找到程序中的问题原创 2020-06-16 17:06:14 · 620 阅读 · 0 评论 -
异常与多线程
01. 异常02. 线程实现方式03. 线程同步机制04. 等待唤醒机制05. 线程池06. Lambda表达式原创 2020-06-11 22:16:34 · 122 阅读 · 0 评论 -
斗地主案例(双列)
具体规则:组装54张扑克牌将54张牌顺序打乱三个玩家参与游戏,三人交替摸牌,每人17张牌,最后三张留作底牌。查看三人各自手中的牌(按照牌的大小排序)、底牌规则: 手中扑克牌从大到小的摆放顺序:大王,小王,2,A,K,QJ,10,9,8,7,6,5,4,3jjj...原创 2020-06-11 22:07:17 · 245 阅读 · 0 评论 -
Map集合
1.Map集合概述Collection中的集合,元素是孤立存在的(理解为单身) ,向集合中存储元素采用一个个元素的方式存储。Map中的集合,元素是成对存在的(理解为夫妻)。每个元素由键与值两部分组成,通过键可以找对所对应的Collection中的集合称为单列集合,Map中的集合称为双列集合。需要注意的是,Map中的集合不能包含重复的键,值可以重复;每个键只能对应一一个java. util.Map<k,v>集合Map集合的特点:Map集合是一个双列集合,一个元素包含两个值(一原创 2020-06-10 13:27:34 · 605 阅读 · 0 评论 -
Collection工具类
java. utils.Collections是集合工具类,用来对集合进行操作。部分方法如下:public static boolean addAll(Collection C,T… elements):往集合中添加一-些元素。public static void shuffle(List<?> list) 打乱顺序:打乱集合顺序。package cn.itcast.day11.demo08;import java.util.ArrayList;import java.ut原创 2020-06-03 15:51:04 · 186 阅读 · 0 评论 -
Set集合
1.HashSet集合java. util.Set接口extends Collection接口Set接口的特点:不允许存储重复的元素没有索引,没有带索引的方法,也不能使用普通的for循环遍历java. util. HashSet集合implements Set接口HashSet的特点:不允许存储重复的元素有索引,没有带索引的方法,也不能使用普通的for循环遍历是一个无序的集合,存储元素和取出元素的顺序有可能不一-致底层是一个哈希表结构(查询的速度非常的快)package cn.原创 2020-06-02 16:05:57 · 138 阅读 · 0 评论 -
list集合
1.介绍和常用方法java.util.List接口extends Collection接口List接口的特点:有序的集合,存储元素和取出元素的顺序是一致的(存储123 取出123)有索引,包含了一些带索引的方法允许存储重复的元素List接口中带索引的方法(特有)public void add(int index, E element): 将指定的元素,添加到该集合中的指定位置上。public E get(int index) :返回集合中指定位置的元素。 public E remov原创 2020-05-31 23:55:33 · 116 阅读 · 0 评论 -
斗地主案例
1.案例介绍按照斗地主的规则,完成洗牌发牌的动作。具体规则:使用54张牌打乱顺序,三个玩家参与游戏,三人交替摸牌,每人17张牌,最后三张留作底牌。2.案例分析准备牌:牌可以设计为一-个ArrayList ,每个字符串为一张牌。每张牌由花色数字两部分组成,我们可以使用花色集合与数字集合嵌套迭代完成每张牌的组装。牌由Collections类的shuffle方法进行随机排序。发牌:将每个人以及底牌设计为ArrayList < String> ,将最后3张牌直接存放于底牌,剩余牌通原创 2020-05-31 21:40:31 · 458 阅读 · 1 评论 -
泛型
1.泛型的概念泛型:是一种末知的数据类型,当我们不知道使用什么数据类型的时候可以使用泛型泛型也可以看出是一个变量用来接收数据类型E e: Element元素T t :Type类型使用泛型的好处创建集合对象,不使用泛型好处:集合不使用泛型,默认的类型就是object类型,可以存储任意类型的数据弊端:不安全,会引发异常创建集合对象,使用泛型好处:1.避免了类型转换的麻烦,存储的是什么类型,取出的就是什么类型2.把运行期异常(代码运行之后会抛出的异常),提升到了编译期(写代码的时候会原创 2020-05-31 19:40:36 · 130 阅读 · 1 评论 -
Collection集合
1. 集合的概述●集合:集合是java中提供的一种容器,可以用来存储多个数据。集合和数组既然都是容器,它们有啥区别呢?数组的长度是固定的。集合的长度是可变的。数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象。而且对象的类型可以不一2.集合框架介绍学习集合的目标:会使用集合存储数据会遍历集合,把数据取出来掌握每种集合的特性集合框架的学习方式:学习顶层:学习顶层接口/抽象类中共性的方法,所有的子类都可以使用用底层:顶层不是接口就是抽象类无法创建对象使用,原创 2020-05-29 14:22:51 · 140 阅读 · 0 评论 -
集合
01. Collection集合02. 泛型03. 斗地主案例(单列)04. 数据结构05. List集合06. Set集合07. Collection工具类08. Map集合09. Debug调试10. 斗地主案例(双列)原创 2020-05-28 15:32:20 · 121 阅读 · 0 评论 -
基本类型包装类
1.包装类的概念包装类:基本数据类型,使用起来非常方便,但是没有对应的方法来操作这些基本类型的数据。可以使用一个类,把基本类型的数据装起来在类中定义一些方法,这个类叫做包装类,我们可以使用类中的方法来操作这些基本类型的数据。2.装箱与拆箱2.1 装箱装箱:把基本类型的数据,包装到包装类中(基本类型的数据->包装类)构造方法:Integer(int value) 构造一个新分配的Integer 对象,它表示指定的int值。Integer(String s)构造一个新分配的Integ原创 2020-05-28 15:26:24 · 220 阅读 · 0 评论 -
StringBuilder类
1.StringBuilder的原理字符串是常量;它们的值在创建之后不能更改。字符串缓冲区支持可变的字符串。因为String 对象是不可变的,所以可以共享。2.StringBuilder的构造方法和api2.1StringBuilder构造方法java. lang. StringBuilder类:字符串缓冲区,可以提高字符串的效率构造方法:StringBuilder()构造一个不带任何字符的字符串生成器,其初始容量为16 个字符。StringBuilder(String str)构造一个字符原创 2020-05-28 14:21:52 · 84 阅读 · 0 评论 -
System类
java. lang .System类中提供了大量的静态方法,可以获取与系统相关的信息或系统级操作,在System类的API文档中,常用的方法有:public static long currentTimeMillis() :返回以毫秒为单位的当前时间。public static void arraycopy(0bject src, int srcPos, Object dest, int destPos, int length) :将数组中指定的数据拷贝到另一个数组中。练习一public st原创 2020-05-28 12:46:57 · 113 阅读 · 0 评论 -
Calendar类
1.Calendar类获取对象的方式Calendar. 类是一个抽象类,它为特定瞬间与一 组诸如YEAR、MONTH DAY_OF MONTH、 HOUR等且历字段之间的转换提供了一些方法:并为操作日历字段。(例如获得下星期的日期)提供了一些方法。瞬间可用毫秒值来表示,它是距历元(即格林威治标准时间1970 年1月1日的00:00:00. 00,格里高利历)的偏移量。java. util. Calendar类:日历类Calendar类是一个抽象类,里边提供了很多操作日历字段的方法(YEAR、MONTH原创 2020-05-28 11:38:44 · 459 阅读 · 0 评论 -
常用API
01.Object类02.Date类03.Calendar类04.System类05.StringBuilder类06.基本类型包装类原创 2020-05-26 21:53:20 · 115 阅读 · 0 评论 -
Date类
1.毫秒值的概念和作用java.util.Date类表示特定的瞬间,精确到毫秒。分配Date对象并初始化此对象,以表示自从标准基准时间(称为“历元(epoch) ”,即1970 年1月1日00:00:00 GMT)以来的指定毫秒数。毫秒值的作用:可以对时间和日期进行计算2099-01-03到2088-01-01 中间一共有多少天可以日期转换为毫秒进行计算,计算完毕,在把毫秒转换为日期把日期转换为毫秒:当前的日期:2088-01-01时间原点(0毫秒):1970年1月1日00:00:00就是原创 2020-05-28 10:57:22 · 177 阅读 · 0 评论