Java实现冒泡排序
问题描述利用冒泡排序把一列数组按从小到大或从大到小排序(一)、冒泡排序思想以从小到大为例:1、第一轮的冒泡,从第一个数开始,与相邻的第二个数相比,若第一个数更大,则交换一二的位置,反之不动,结束后进行二三位置两个数的比较,同理如此反复,直到把最大的一个数排到最后一个...
2024-01-10详解虚拟化技术QEMU-KVM入门
一.QEMU、KVM、QEMU-KVMQEMU提供一系列的硬件模拟设备(CPU,网卡,磁盘等),客户机指令都需要QEMU翻译,因而性能较差。KVM是linux内核提供的虚拟化,可以用来进行vCPU的创建与运行,虚拟内存的地址空间分配,指令执行效率较高,但缺少IO设备的虚拟化。QEMU-KVM就是KVM与QEMU的结合,KVM负责CPU虚拟化+内存虚拟...
2024-01-10PHP如何搭建百度Ueditor富文本编辑器
本文为大家分享了PHP搭建百度Ueditor富文本编辑器的方法,供大家参考,具体内容如下下载UEditor官网:下载地址将下载好的文件解压到thinkphp项目中,本文是解压到PUBLIC目录下并改文件夹名称为ueditor第一步 引入javascript在html中如入下面的js语句引入相关文件<script type="text/javascript" charset="utf-8" src="_...
2024-01-10将15位身份证补全为18位身份证的算法示例详解
前言最近在参与一个银行项目-某银行安防系统-反洗钱需求的开发,银行项目的离不开身份证号码,身份证号码作为我国公民的唯一标识,有这非同寻常的意义,由于业务的要求15位的身份证号码无法命中,所以需要补全为18位,一开始自己想着加个年份的前两位,后面再加个X不就行了嘛,后来代码写...
2024-01-10MongoDB中ObjectId的误区及引起的一系列问题
近期对两个应用进行改造,在上线过程中出现一系列问题(其中一部分是由于ObjectId误区导致的)先来了解下ObjectId:TimeStamp 前 4位是一个unix的时间戳,是一个int类别,我们将上面的例子中的objectid的前4位进行提取“4df2dcec”,然后再将他们安装十六进制 专为十进制:“1307761900”,这个数字就是一...
2024-01-10Java字符流和字节流对文件操作的区别
记得当初自己刚开始学习Java的时候,对Java的IO流这一块特别不明白,所以写了这篇随笔希望能对刚开始学习Java的人有所帮助,也方便以后自己查询。Java的IO流分为字符流(Reader,Writer)和字节流(InputStream,OutputStream),字节流顾名思义字节流就是将文件的内容读取到字节数组,然后再输出到另一个文件中...
2024-01-10Java中5种方式实现String反转
这里介绍Java中5中实现String反转的方式。一、数组实现String反转//数组实现String反转 public String reverseByArray(){ if(str == null || str.length() == 1){ return null; } char[] ch = str.toCharArray();//字符串转换成字符数组 for(int i = 0 ; i < ch.length/2 ; i++){ char temp =...
2024-01-10java抓取12306信息实现火车余票查询示例
最近在弄一个微信的公众帐号,涉及到火车票查询,之前用的网上找到的一个接口,但只能查到火车时刻表,12306又没有提供专门的查票的接口。今天突然想起自己直接去12306上查询,抓取查询返回的数据包,这样就可以得到火车票的信息。这里就随笔记一下获取12306余票的过程。首先,我用firefox浏览...
2024-01-10没有父类的Java Class是如何从Object继承的
经常有Java初学者会问为什么一个没有父类的Java类会自动从java.lang.Object类继承。如下面是一个普通的Java类:public class Test // 从Object类继承{public static void main(String[] args){System.out.println(new Test().toString());}}从上面的代码可以看出,实际上,Test类的父类就是Object,因此,在Test中可以使用Object类的public...
2024-01-10多线程编程的基础知识点
多线程编程一直是程序员比较头痛和心虚的地方,因为线程执行顺序的不可预知性和调试时候的困难,让不少人在面对多线程的情况下选择了逃避,采用单线程的方式,其实只要我们对线程有了明确的认识,再加上Java内置的对多线程的天然支持,多线程编程不再是一道难以逾越的鸿沟。 「...
2024-01-10用维阵还原 Zyxel 后门漏洞
作者:km1ng@极光无限维阵漏洞团队原文链接:https://mp.weixin.qq.com/s/Ol3B3PFLLXLFF8ThA9nxEg一、简介荷兰网络安全公司Eye Control的安全研究人员发现,超过10万个合勤科技(Zyxel)公司的防火墙、接入点控制器和VPN网关产品中存在管理员级后门账户。这些在二进制代码中硬编码的管理员级别账户使攻击者可通...
2024-01-10CVE-2019-5786 漏洞原理分析及利用
作者:Kerne7@知道创宇404实验室时间:2020年6月29日 从补丁发现漏洞本质首先根据谷歌博客收集相关CVE-2019-5786漏洞的资料:High CVE-2019-5786: Use-after-free in FileReader,得知是FileReader上的UAF漏洞。然后查看https://github.com/chromium/chromium/commit/ba9748e78ec7e9c0d594e7edf7b2c07ea2a90449?diff=split上的补丁对比补丁可以看到D...
2024-01-10Windows RDP 服务高危漏洞分析 (CVE-2019-0708)
作者: 启明星辰ADLab公众号:https://mp.weixin.qq.com/s/5WRJUPgPXU2Ja_R6pRPh_g1. 背景2019 年 5 月 14 日微软官方发布紧急安全补丁,修复了 Windows 远程桌面服务的远程代码执行高危漏洞 CVE-2019-0708(CNVD-2019-14264、CNNVD-201905-434),该漏洞影响了某些旧版本的 Windows 系统。由于该漏洞无需身份验证且无需用户交互,...
2024-01-10如何用shell 实现类似python里的dict.get()的功能
接触shell不多,想问下shell里面是否有类似python的字典的get的功能,就是key,value对应的方式。其实需要用这种方式,主要是python的dict.get有个找不到k返回默认值的方式,例如:v=d.get('k','default')如果找到‘k’就返回对应的value,找不到就返回'default'。其实就是想问shell里有没有类似的功能。因为只学过pyth...
2024-01-10数据库字段匹配的问题
现在有两个表(mysql)表1字段如下:省,市,手机号,姓名,其它字段表2字段如下:省,市,手机号,其它字段表1和表2的数据库都较大,日新增数据几百万行。现在对表1和表2都进行了分表。需求是:根据两表中的手机号匹配两表的数据。问题是:1、匹配的好的数据如何存储,是存储到第三个表,...
2024-01-10关于std:cin的一个细节问题
书上看到这个示例:#include <iostream>#include <string>using namespace std;int main(){ string buf; while (cin >> buf && !buf.empty()) cout << 1;}我想问!buf.empty()有必要吗?,据我的理解,cin>>buf不接受空白字符,那就肯定不是空字符串了,所以while(cin>>buf)就行了.回答:][1]其实不用加的 默认不接收空格换...
2024-01-10VScode 注释handlebars 出现问题
直接上代码{{!-- <select local-class="choose-market" name="markets"> <option value="All">全部</option> {{#each markets as |item|}} <option value={{item}}>{{item}}</option> {{/each}} </select> --}}就是这段注释,效果也和这个一样。...
2024-01-10功能型消息推送功能如何实现(带同意 拒绝)
比如如上图的那种推送功能 现在哪些推送平台可以实现这种功能回答:@erehmi 说的不错,根据厂商会有所不同。给你举个原生android例子:<?xml version="1.0" encoding="UTF-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_...
2024-01-10iOS 如何拖一个自定义view或cell到tableview?
如图, 拖最上的view到tableview,没思路啊...回答:一个比较简单的思路,把你说的view也做成一个cell,移动的时候,只需要切换indexPath。不过这种布局方式,选用UICollectionView可能会更简单一些回答:拖动的就是一个view而已,等到目标位置,然后插入一个一模一样的cell就好啦...
2024-01-10Write on a closed net.Conn but returned nil error
先上一段简单的代码:package mainimport ( "fmt" "time" "net")func main() { addr := "127.0.0.1:8999" // Server go func() { tcpaddr, err := net.ResolveTCPAddr("tcp4", addr) if err != nil { panic(err) } listen, er...
2024-01-10