谈谈面试中常问的I/O模型
一、IO介绍1.1 Java中IO的分类以下部分源自网络相关资料。IO按照处理的数据类型可分为:(1)面向字节操作的I/O接口:inputStream,outputStream(2)面向字符操作的接口:Reader,WriterIO按照数据的传输方式可分为:(1)面向磁盘操作的I/O接口:File(2)面向网络操作的I/O接口:Socket1.2 Unix中的五种IO模型以下分类...
2024-01-10昨天微信的一道面试题,求解
题目是: 有A B C D 4个候选元素,2个元素展示位。写一个推荐程序,每一次选择2个不同的元素去展示。要求多次推荐后,A B C D推荐次数出现的比例趋近4:3:2:1。元素出现越随机越好。注意是两个不同的元素。回答:P(X1 X2)为出现组合X1,X2的概率则有:P(AB) + P(AC) + P(AD) = 4/10P(AB) + P(BC) + P(BD) = 3/10P(AC) + P(BC) +...
2024-01-10面试题合集(持续更新中。。。)
1.Redis缓存的删除策略算法FIFO First in First out 先近先出。删除进入redis最早的key。LRU Least Recently Used 最近最早被使用。删除最近一段时间内,被使用过的使用时间离现在最远的key。LFU Least Frequently Used 最近最不经常使用。删除最近一段时间内,使用频率最少的key。具体策略,当有新key要写入却...
2024-01-10一个面试题,求解答
#include <iostream>using namespace std;class Myclass{public: Myclass():i(0){}; void f1(){cout<<"f1"<<endl;} void f2(){cout<<i<<endl;}private: int i;};int main(){ Myclass *p = NULL; // f1 p->f1(); // error p->f2(); return 0;}如注...
2024-01-10[CSS面试题] 如何使得左右两边没有确定宽度的元素保持其中文本的自适应
需要实际的代码, 而不是解题思路 :<div class="bg"><div><span>文案文案文案文案文案文案文案文案文案文案文案文案文案文案</span></div><div><button>按钮按钮</button></div></div>回答 <style type="text/css"> .bg { display: flex; justify-content: space-between; } .rig...
2024-01-10推荐几款MySQL相关工具
前言:随着互联网技术的不断发展, MySQL 相关生态也越来越完善,越来越多的工具涌现出来。一些公司或个人纷纷开源出一些不错的工具,本篇文章主要介绍几款 MySQL 相关实用工具。提醒下,这里并不介绍 Navicat 等这类图形化操作工具哦。1. SQL 审核 web 工具SQL 审核与执行,可能是各个公司或团队比...
2024-01-10Nginx定义域名访问方式
最近在搭建Nginx,做到域名访问的时候总是访问不了。nginx的配置文件nginx.conf中server配置如下: server { listen 80; server_name hehe.weige.com; #charset koi8-r; #access_log logs/host.access.log main;location / { root html-hehe; index index.html index.htm; }}配置完之后 在sbin 目录下执行命令 ./ng...
2024-01-10Win10 + Ubuntu 16.04双系统完美安装教程【详细】
务必记得备份自己的数据,数据无价!!!电脑型号:Thinkpad E550固态装了win10,机械硬盘打算装Ubuntu16.04固态硬盘格式MBR,机械硬盘格式GPT一、制作U启动盘1、下载系统镜像 Ubuntu 16.04 LTS可以到<官网>下载,也可以到<云盘>下载。(提取码:5t4s )2、下载UltraISO软碟通可到<官网>下载。3、刻录镜...
2024-01-10Vue3实现Message消息组件示例
目录组件设计定义最终的组件 API定义组件结构模板和样式模板 Template消息图标样式组件脚本创建组件实例1、创建包裹容器,并设置外层的 Class 属性2、创建实例并挂载到 body3、其中定义取消挂载和重新设置 top 值的方法实现渲染实例 API在大多数 web 产品中,全局的 Message 组件占有较大的使用场景,它常...
2024-01-10vue项目中使用rem,在入口文件添加内容操作
在使用vue-cli搭建好项目框架后,在目录结构的index.html文件中添加一段js代码:<script> window.onload = function () { var setRem = function () { // UI设计稿的宽度 var uiWidth = 1200; // 移动端屏幕宽度 var winWidth = document.documentElement.clientWidth; // 比率 var rate = winWidth ...
2024-01-10SpringBoot的服务注册与发现示例
微服务实践“微服务”自然要学习如何做服务注册与发现基于SpringBoot来进行微服务的学习,自然选择了与之息息相关的SpringCloud;当然可以选择其他的技术进行,比如dubbo也可以用zookeeper来实现服务注册与发现,至于zookeeper来实现此功能好还是不好,各家之言都有SpringCloudSpring Cloud provides tools for dev...
2024-01-10Java中JDBC事务与JTA分布式事务总结与区别
Java事务的类型有三种:JDBC事务、JTA(Java Transaction API)事务、容器事务。常见的容器事务如Spring事务,容器事务主要是J2EE应用服务器提供的,容器事务大多是基于JTA完成,这是一个基于JNDI的,相当复杂的API实现。所以本文暂不讨论容器事务。本文主要介绍J2EE开发中两个比较基本的事务:JDBC事务和JTA事...
2024-01-10Java设计模式之策略模式(Strategy模式)介绍
Strategy是属于设计模式中 对象行为型模式,主要是定义一系列的算法,把这些算法一个个封装成单独的类。Stratrgy应用比较广泛,比如,公司经营业务变化图,可能有两种实现方式,一个是线条曲线,一个是框图(bar),这是两种算法,可以使用Strategy实现。这里以字符串替代为例,有一个文件,我们需...
2024-01-10浅析java 希尔排序(Shell)算法
先取一个小于n的整数d1作为第一个增量,把文件的全部记录分成d1个组。所有距离为dl的倍数的记录放在同一个组中。先在各组内进行直接插入排序;然后,取第二个增量d2<d1重复上述的分组和排序,直至所取的增量dt=1(dt<dt-l<;…<d2<d1),即所有记录放在同一组中进行直接插入排序为止。该方法实质上...
2024-01-10Linux 内核 AF_PACKET 原生套接字漏洞(CVE--14386)分析
作者:启明星辰ADLab原文链接:https://mp.weixin.qq.com/s/uv3BiznUCUy8do_ullnXUw一、漏洞背景近日,Openwall社区上公开了一个Linux内核AF_PACKET原生套接字内存破坏漏洞。根据细节描述,该漏洞出现在net/packet/af_packet.c中,由整数溢出导致越界写,可以通过它进行权限提升。该漏洞危害评级为高,编号为CVE-2020-14386...
2024-01-10C语言 struct问题
include <stdio.h>struct Bit { unsigned int a:5; unsigned int :2; unsigned int b:1; unsigned int :0; unsigned int c:2; unsigned int :2; unsigned int d:4; unsigned int e:8;};void main(void) { printf("%d\n",sizeof(struct Bit)/sizeof(unsigned int));} //输出是2...
2024-01-10cocos2dx 每次单点触碰后回调函数出发两次
本意是想点击一次屏幕生成一个小球,然后测试一下物理引擎。但是运行后每次点击会出现两个小球,我试着在生成小球的函数addNewSpriteAtPosition里Log了一下,发现这个函数执行了两次,但仍然找不到解决的办法。以下为截图和代码,感谢解答:#include "HelloWorldScene.h"#include "SimpleAudioEngine.h"USING_NS_CC;Sce...
2024-01-10C/C++数组与指针dereference问题
见下图代码,注释表示问题,输出结果在最后: int b[2][3]= {1,2,3,4,5,6}; cout<<b<<endl; cout<<*b<<endl; cout<<&b<<endl; cout<<b[0]<<endl; cout<<&b[0]<<endl; cout<<*b[0]<<endl;//1.既然b[0]和b地址是一样的,为什么取value得到的结果不同,换言之为什么*b取到的仍然是地址? cout<<"---------"<<endl;...
2024-01-10关于iOS端手机QQ右滑退出时Navigation的渐变效果如何实现?
自定义了 navigation 时, 用右滑退出 navigation会有空白 而不是系统提供的渐变,而手机QQ的navigation 是自定义的 但是侧滑的时候不影响 效果。 具体实现操作如下:1.打开手机QQ任意一个好友的详情2.侧滑pop3.观察Navigation的效果需要帮我提供一个思路, 目前 正常的方式我全部试过,UIViewControllerAnimateTrans...
2024-01-10请问这种历史帐号的下拉框怎样实现呢?急!
就像这种,我想求教如何实现这种历史帐号的功能和每个历史帐号右边有个叉叉可以点击删除的。回答:可以使用cookie1. 每次登录之后写入,就实现了历史帐号的写入功能,2. 在登录页面查询cookie 实现了查询功能3. 当你点击删除用JS操作cookie删除相关帐号,就实现了你说的 叉叉可以点击删除 功能...
2024-01-10使用instruments的Core Animation 测试
今天用instruments的Core Animation 进行测试。测试之前我的页面是这样的测试后就变成了这样!!!说明测试后我没有进行任何的代码更改测试后storyboard文件我也没有进行任何更改变化. 整个页面的文字都变模糊了补救尝试command + shift + k 进行清理,结果没变化,还是模糊的删掉App重新安装,结...
2024-01-10Xcode8升级后遇到的问题
怎么模拟器这么多回答:http://www.jianshu.com/p/1037...回答:以前也会有这个问题,具体不清楚命令行xcrun simctl list devices | grep -v '^[-=]' | cut -d "(" -f2 | cut -d ")" -f1 | xargs -I {} xcrun simctl delete "{}"除了你正在运行的模拟器,其他的都会删除,需要的再自己加就好...
2024-01-10ios code =-1001 请求超时
如图这是报的错误NSDictionary *parameter=@{@"start":@(start),@"uid":@([LocalStore getUid]),@"muid":[LocalStore getMuid],@"count":@(count)};[_manager POST:NET_DOMAIN parameters:parameter progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable resp...
2024-01-10阿里的开发手册中为什么禁用map来作为查询的接受类?
我在项目中经常使用List<Map<String,Object>>做为查询的接受对象.感觉使用方便,不用每个多表查询的时候都创建DTO类.上面只针对查询,如果将map应用到DTO,VO是否会有相同的问题.回答:1、map参数数量大时不易维护。要通过识别字符串形式的key,可能哪个字母没加程序就出错了2、map转成实体,耗费资源。或...
2024-01-10使用七牛 Java SDK 上传文件到七牛云存储时,如何加入前缀?
使用七牛 java sdk 上传到云存储时,已经获取了ACCESS_KEY、SECRET_KEY和BUCKET。上传代码: Mac mac = new Mac(Config.ACCESS_KEY, Config.SECRET_KEY); String bucketName = ""; PutPolicy putPolicy = new PutPolicy(bucketName); String uptoken = putPolicy.token(mac); PutExtra e...
2024-01-10