<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Betterman_QS的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Betterman_QS</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Betterman_QS]]></copyright><item><title><![CDATA[CCF试题 201609-3 炉石传说]]></title><link>https://blog.youkuaiyun.com/Betterman_QS/article/details/105080087</link><guid>https://blog.youkuaiyun.com/Betterman_QS/article/details/105080087</guid><author>Betterman_QS</author><pubDate>Tue, 24 Mar 2020 21:19:46 +0800</pubDate><description><![CDATA[一、问题描述
《炉石传说：魔兽英雄传》（Hearthstone: Heroes of Warcraft，简称炉石传说）是暴雪娱乐开发的一款集换式卡牌游戏（如下图所示）。游戏在一个战斗棋盘上进行，由两名玩家轮流进行操作，本题所使用的炉石传说游戏的简化规则如下：

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; * 玩家会控制一些角色，每个角色有自己的生命值和攻击力。当生命值...]]></description><category></category></item><item><title><![CDATA[Java网络编程之TCP协议数据传输]]></title><link>https://blog.youkuaiyun.com/Betterman_QS/article/details/104678731</link><guid>https://blog.youkuaiyun.com/Betterman_QS/article/details/104678731</guid><author>Betterman_QS</author><pubDate>Thu, 05 Mar 2020 17:57:25 +0800</pubDate><description><![CDATA[一、TCP协议概述
TCP协议是相对于UDP比较稳定的传输协议，这里存在三次握手，来确保连接状态，同时有明确的客户端和服务端之分。
TCP服务中需要服务器端先启动，需要监听指定端口，等待客户端的连接。
客户端主动连接服务器，和服务器连接之后，才可以进行数据交互，服务器不能主动连接客户端。
对于TCP操作而言，Java中提供了两个Socket
1. 服务端Socket 
	java.net.Serv...]]></description><category></category></item><item><title><![CDATA[Java网络编程之UDP协议数据传输]]></title><link>https://blog.youkuaiyun.com/Betterman_QS/article/details/104659530</link><guid>https://blog.youkuaiyun.com/Betterman_QS/article/details/104659530</guid><author>Betterman_QS</author><pubDate>Wed, 04 Mar 2020 19:13:56 +0800</pubDate><description><![CDATA[一、UDP数据传输方式
数据传递采用数据包方式传递，所有的数据要进行打包操作，并且没有对应的客户端服务器概念，有且只有发送段和接收端。
Socket 套接字
数据需要进行传递操作，在数据传递的两台计算机当中必须有对应的Socket。这里采用UDP协议，那么必须有一个UDP协议的Socket
DatagramSocket();
	创建一个发送端UDP协议Socket对象
DatagramSocket...]]></description><category></category></item><item><title><![CDATA[Java 网络编程的相关知识]]></title><link>https://blog.youkuaiyun.com/Betterman_QS/article/details/104658654</link><guid>https://blog.youkuaiyun.com/Betterman_QS/article/details/104658654</guid><author>Betterman_QS</author><pubDate>Wed, 04 Mar 2020 18:15:30 +0800</pubDate><description><![CDATA[一、网络编程概述
1、C/S 和 B/S
C/S 是客户端-服务器软件结构，服务提供商给予用户服务需要准备的内容。

各大平台的客户端
Android iOS PC Windows Linux macOS
服务器提供服务
软件更新时，服务器版本更新，同时本地软件也要进行更新操作，这个操作非常耗时。

B/S是浏览器-服务器软件结构，服务提供商只要提供数据服务以及前端数据展示方式就可以了。

浏览器...]]></description><category></category></item><item><title><![CDATA[Java中的线程池以及Lambda表达式的应用]]></title><link>https://blog.youkuaiyun.com/Betterman_QS/article/details/104636911</link><guid>https://blog.youkuaiyun.com/Betterman_QS/article/details/104636911</guid><author>Betterman_QS</author><pubDate>Tue, 03 Mar 2020 17:58:16 +0800</pubDate><description><![CDATA[一、线程池
1、什么是线程池
自定义的线程类不管是继承Thread类还是实现Runnable接口，都需要重写Run方法，而且每一个线程对象有且只能执行一次，之后就会被销毁，使用起来就比较麻烦。
线程池是可以容纳多个线程的容器，程序可以从线程池获取线程来完成目标代码，同时也可以将线程归还给线程池，省去了创建线程和销毁线程这样非常繁琐的操作。
2、线程池的使用
public static Execut...]]></description><category></category></item><item><title><![CDATA[Java中的多线程和线程安全问题]]></title><link>https://blog.youkuaiyun.com/Betterman_QS/article/details/104615148</link><guid>https://blog.youkuaiyun.com/Betterman_QS/article/details/104615148</guid><author>Betterman_QS</author><pubDate>Mon, 02 Mar 2020 17:47:01 +0800</pubDate><description><![CDATA[一、多线程
1、多线程的优缺点
优点
	1. 提升资源利用率
	2. 提高用户体验
缺点:
	1. 降低了其他线程的执行概率
	2. 用户会感受到软件的卡顿问题
	3. 增加的系统，资源压力
	4. 多线程情况下的共享资源问题，线程冲突，线程安全问题

2、创建自定义线程类的方式
方式一:
	自定义线程类，继承Thread类，重写run方法
	创建自定义线程对象，直接调用start方法，开启线程
...]]></description><category></category></item><item><title><![CDATA[CCF试题 201903-2 二十四点]]></title><link>https://blog.youkuaiyun.com/Betterman_QS/article/details/104597261</link><guid>https://blog.youkuaiyun.com/Betterman_QS/article/details/104597261</guid><author>Betterman_QS</author><pubDate>Sun, 01 Mar 2020 19:01:36 +0800</pubDate><description><![CDATA[题目描述
这道题目的主要解题思想是用堆栈来解决四则运算的优先级问题。


本题的关键点在于如何正确处理运算符的优先级问题，可以使用两个栈来解决这个问题。一个是运算数栈，另一个是运算符栈。
在遍历当前算术表达式字符串时会有五种情况：

当前字符是数字。
如果当前字符是数字的话，那么就直接将其转换成对应的整型数并压入运算数栈中。
当前字符是加号
由于加法的优先级低于乘法和除法，所以不能直接进行加法运算...]]></description><category></category></item><item><title><![CDATA[CCF试题 201903-1 小中大 没得满分的原因]]></title><link>https://blog.youkuaiyun.com/Betterman_QS/article/details/104573371</link><guid>https://blog.youkuaiyun.com/Betterman_QS/article/details/104573371</guid><author>Betterman_QS</author><pubDate>Sat, 29 Feb 2020 14:40:00 +0800</pubDate><description><![CDATA[问题描述



]]></description><category></category></item><item><title><![CDATA[CCF试题 201604-2 俄罗斯方块]]></title><link>https://blog.youkuaiyun.com/Betterman_QS/article/details/104562593</link><guid>https://blog.youkuaiyun.com/Betterman_QS/article/details/104562593</guid><author>Betterman_QS</author><pubDate>Fri, 28 Feb 2020 20:10:36 +0800</pubDate><description><![CDATA[问题描述
俄罗斯方块是俄罗斯人阿列克谢·帕基特诺夫发明的一款休闲游戏。
　　游戏在一个15行10列的方格图上进行，方格图上的每一个格子可能已经放置了方块，或者没有放置方块。每一轮，都会有一个新的由4个小方块组成的板块从方格图的上方落下，玩家可以操作板块左右移动放到合适的位置，当板块中某一个方块的下边缘与方格图上的方块上边缘重合或者达到下边界时，板块不再移动，如果此时方格图的某一行全放满了方块，则该...]]></description><category></category></item><item><title><![CDATA[Java中的IO流]]></title><link>https://blog.youkuaiyun.com/Betterman_QS/article/details/104540179</link><guid>https://blog.youkuaiyun.com/Betterman_QS/article/details/104540179</guid><author>Betterman_QS</author><pubDate>Thu, 27 Feb 2020 17:53:31 +0800</pubDate><description><![CDATA[一、 什么是IO流
一般情况下是按照当前程序使用的内存为参照物来考虑数据的走向问题。
以文件操作为例
从内存中保存数据到硬盘 output
从硬盘中读取数据到内存 input
看视频，缓冲
使用缓冲可以让用户体验提高，相对来说较为平和的观看体验。
网页第一次访问时，加载时间较慢，第二次打开，速度很快
IO流按照流向分类可分为输入和输出，按照文件操作处理单元分类可分为字节流和字符流。
FileInp...]]></description><category></category></item><item><title><![CDATA[Java中的String类]]></title><link>https://blog.youkuaiyun.com/Betterman_QS/article/details/104521383</link><guid>https://blog.youkuaiyun.com/Betterman_QS/article/details/104521383</guid><author>Betterman_QS</author><pubDate>Wed, 26 Feb 2020 18:40:01 +0800</pubDate><description><![CDATA[一、获取方法
int length();
获取字符串长度
char charAt(int index);
获取String字符串中指定下标位置的char类型字符，如果index超出有效范围，则会产生StringIndexOutOfBoundsException
int indexOf(char ch);
int indexOf(String str);
int indexOf(char ch, i...]]></description><category></category></item><item><title><![CDATA[Java中的File类]]></title><link>https://blog.youkuaiyun.com/Betterman_QS/article/details/104501430</link><guid>https://blog.youkuaiyun.com/Betterman_QS/article/details/104501430</guid><author>Betterman_QS</author><pubDate>Tue, 25 Feb 2020 18:05:11 +0800</pubDate><description><![CDATA[一、什么是File类
File类是SUN公司提供给开发者操作文件和文件夹的一个类。Java中万物皆对象，计算机中万物皆文件。
获取File类有三种方式：

File(String pathName);
根据对应的文件路径创建获取对应的File类对象，可以是文件，可以是文件夹。
File(String parent, String child);
根据对应的父目录文件夹路径，以及子文件名或者子文件夹...]]></description><category></category></item><item><title><![CDATA[Java中泛型的使用]]></title><link>https://blog.youkuaiyun.com/Betterman_QS/article/details/104486433</link><guid>https://blog.youkuaiyun.com/Betterman_QS/article/details/104486433</guid><author>Betterman_QS</author><pubDate>Mon, 24 Feb 2020 22:03:21 +0800</pubDate><description><![CDATA[一、什么是泛型，为什么引入泛型
我们在完成一个工具类的编写后，如果这个工具类只适用于一种数据类型，那么功能代码的复用程度不够。如果需要更换数据类型，只能重新完成对应数据类型的功能代码。有可能出现各式各样的类型，工作是重复的，既耽误时间又消耗精力。
Java的泛型就是来解决这样的问题，它可以实现同一套代码适用于各种数据类型，大大提高了代码的复用性。
二、java中泛型的应用
泛型的应用分为三种：
1...]]></description><category></category></item><item><title><![CDATA[有关代码块和类的加载的习题]]></title><link>https://blog.youkuaiyun.com/Betterman_QS/article/details/104340960</link><guid>https://blog.youkuaiyun.com/Betterman_QS/article/details/104340960</guid><author>Betterman_QS</author><pubDate>Sun, 16 Feb 2020 13:45:44 +0800</pubDate><description><![CDATA[前言：想要彻底弄明白此类题目，需要把各种代码块的区别和类的加载顺序搞明白。只要这些真正明白了，那题目再怎么变动也都不过如此。
一、代码块
1、构造代码块（动态代码块）
构造代码块也叫动态代码块，位于非静态成员变量和构造方法之间，一般用于初始化成员变量。一定要注意的是：初始化当前类的所有类对象时，只要调用构造方法，就一定会执行对应的构造代码块！！！
2、静态代码块
静态代码块位于静态成员变量之后，一...]]></description><category></category></item><item><title><![CDATA[关于初学Java所遇到的一系列问题]]></title><link>https://blog.youkuaiyun.com/Betterman_QS/article/details/104228792</link><guid>https://blog.youkuaiyun.com/Betterman_QS/article/details/104228792</guid><author>Betterman_QS</author><pubDate>Sat, 08 Feb 2020 22:16:36 +0800</pubDate><description><![CDATA[关于初学Java所遇到的一系列问题
问题1：关于for循环中执行了continue 语句之后，后面的i++还是否执行的问题
例如有这样一段代码：
int i;
for (i = 0; i &lt; 5; i++) {
	if (i == 4)
		continue;
}

这个for循环结束后 i 的值还是5，在 i 等于4的时候执行了continue但并没有跳过最后的i++。如果又有这样一段代码...]]></description><category></category></item></channel></rss>