首页 文章 精选 留言 我的

精选列表

搜索[Excel导题],共7120篇文章
优秀的个人博客,低调大师

《Java语言导学(原书第6版)》一一2.5 包

2.5 包包是相关类和接口的命名空间。概念上,包和文件夹类似,可以将HTML文件、图像文件、脚本和程序分别存在一个文件内。因为Java程序会由很多个体类组成,所以按照包的逻辑形式组织相关类和接口意义重大。Java平台提供了庞大的类库(包的集合)用于开发应用程序。该类库通常称为应用程序接口(Application Programming Interface,API)。类库中的包主要包含编程中的常见任务。例如,对象String包含字符串的状态和行为,对象File可创建、删除、检查、比较和修改文件系统中的文件,对象Socket支持网络套接字的创建和使用,不同的图形用户界面(GUI)对象控制按钮、复选框以及其他与GUI相关的状态和行为。毫不夸张地说,API中有成千上万个类可供选择。因此,程序员可以只关注特定的应用而不是程序运行的基础架构。

优秀的个人博客,低调大师

Kity Minder —— 来自百度的在线思维导图工具

KityMinder 是百度FEX团队的f-cube小组(原UEditor小组)的又一力作。作为一款在线的脑图编辑工具,它有着不输给Native编辑工具(如 xMind,MindManager等)的最佳用户体验。同时,它充分发挥了Web云存储的优势,可以直接将编辑中的脑图同步到云端。此外,借由独创的 “云盘分享”功能,用户可以一键将当前编辑的脑图直接生成在线链接共享给其他用户,实现无缝沟通。文章转载自 开源中国社区 [http://www.oschina.net]

优秀的个人博客,低调大师

前端百题—— js中的包装对象

1 背景 有一个奇怪的现象不知道大家注意过没有,字符串、数字、布尔值都能够调用属性和方法,例如: const str = '123'; console.log(typeof(str)); // string console.log(str.toString()); // 123 const num = 123; console.log(typeof(num)); // number console.log(num.toString()); // 123 const bool = true; console.log(typeof(bool)); // boolean console.log(bool.toString()); // true 复制代码 看到这个现象,大家是不是感觉很奇怪,这与我们平时的想法是相悖的,毕竟我们认为基本类型上面是不存在属性和方法的,这个时候主角包装对象就出现了。 2 包装对象 JS 的数值,布尔,字符串类型的变量,在一定条件下,也可以自动变成对象,这就是原始类型的包装对象。包装对象其实是一种特殊的引用类型,其与引用类型的主要区别在于生命周期。 一般的引用类型在使用new创建其实例时,在执行流离开当前作用域之前一直都保存在内存中; 包装类型的对象只存在该行代码的执行瞬间,然后会立即被销毁。(也意味着在运行时不能为基本类型添加属性和方法) 3 包装对象后台执行流程 基本类型中的String、Number、Boolean在调用属性和方法的时候,后台是怎样执行的呢?其实整个过程可以简化为三步: 创建一个对象类型的实例,例如字符串则创建一个String类型的实例; 调用该实例对象上的特定方法; 销毁该实例。 以字符串为例,来演示该流程: const str = 'abc'; const strNew = str.substring(0, 2); 复制代码 在运行到str.substring(0, 2)的时候其实偷偷执行了以下三步: let strObj = new String(str); const strNew = strObj.substring(0, 2); strObj = null; 复制代码 4 扩展 包装对象和同样的原始类型的值相等吗? 不相等。因为包装对象是引用类型,原始类型是基本类型;包装对象的最大目的,首先是使得 JavaScript 的对象涵盖所有的值,其次使得原始类型的值可以方便地调用某些方法。 如何给基本类型添加属性和方法? 在基本包装对象的原型下面添加,每个对象都有原型。 同一个字符串调用两次相同的方法其包装对象相等吗? 不相等。调用结束后,包装对象实例会自动销毁。这意味着,下一次调用字符串的属性时,实际是调用一个新生成的对象,而不是上一次调用时生成的那个对象,这也说明了为什么不能直接给字符串、数字、布尔值添加属性和方法。 1.如果觉得这篇文章还不错,来个分享、点赞吧,让更多的人也看到 如果你觉得这篇文章对你有点用的话,麻烦请给我们的开源项目点点star: http://github.crmeb.net/u/defu 不胜感激 ! 来自 “开源世界 ” ,链接: https://ym.baisou.ltd/post/739.html ,如需转载,请注明出处,否则将追究法律责任。 ​​​​​​

优秀的个人博客,低调大师

LeetCode第14题:最长公共前缀

题目: 编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。 示例 1:输入: ["flower","flow","flight"]输出: "fl" 示例 2:输入: ["dog","racecar","car"]输出: ""解释: 输入不存在公共前缀。说明: 所有输入只包含小写字母 a-z 。 代码: class Solution(object): def longestCommonPrefix(self, strs): """ :type strs: List[str] :rtype: str """ res = '' # 排除特殊情况 if len(strs) == 0: return res if len(strs) == 1: return strs[0] min_length = len(strs[0]) # 找到最短的字符串,确定循环次数 for i in range(1, len(strs)): if len(strs[i]) < min_length: min_length = len(strs[i]) for i in range(min_length): tmp_char = strs[0][i] # 用每个字符串的第i个元素和第0个字符串的第i个元素对比 for j in range(1, len(strs)): # 不等则清除tmp_char并结束 if strs[j][i] != tmp_char: tmp_char = "" if tmp_char == "": break res += tmp_char return res 自己写的太烂了,cp个范例。。。 本文链接:时光不写博客-最长公共前缀

优秀的个人博客,低调大师

面试常问的Java Web题集

对于我们大部分人而言,在进入自己心仪的公司之前少不了准备工作,有一份全面细致面试题将帮助我们减少许多麻烦。之前给大家整理了一些Java基础方面常见的面试题,现在再整理一些JavaWeb方面常见的面试题,一方面帮助自己巩固下基础,另一方面也希望帮助想要换工作的朋友,看完之后如果你有更好的总结欢迎留言讨论分享。 01说一说selvet的生命周期 servlet 有良好的生存期的定义,包括加载和实例化、初始化、处理请求以及服务结束。 这个生存期由 javax.servlet.Servlet 接口的 init,service 和 destroy 方法表达。 Servlet 被服务器实例化后,容器运行其 init 方法,请求到达时运行其 service 方法,service 方法自动派遣运行与请求对应的 doXXX 方法(doGet,doPost)等,当服务器决定将实例 销毁的时候调用其 destroy 方法。 web 容器加载 servlet,生命周期开始。通过调用 servlet 的 init()方法进行 servlet 的初始化。通过调用 service()方法实现,根据请求的不同调用不同的do***()方法。结束服务,web 容 器调用 servlet的 destroy()方法 02 forward 和 redirect的区别 forward 是服务器请求资源,服务器直接访问目标地址的 URL,把那个 URL 的响应内容读 取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的, 所以它的地址栏中还是原来的地址。 redirect 就是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,一般来 说浏览器会用刚才请求的所有参数重新请求,所以 session,request参数都可以获取。 03 Spring MVC 整合 1.首先,要在web.xml里面配置SpringMVC的核心控制器,DispatcherServlet,对指定的后缀请求进行拦截。 2.Controller层要加@Controller注解,表明该类是MVC的控制层。 3.创建Service接口,给接口加上注解@Component或者@Service表明这是Service业务处理层 4.在Controller层声明Service变量(属性),给变量(属性)加上@Autowired注解,通过自动绑定机制将Service注入到Controller。 (注:@Autowired默认是ByType,如果想根据属性名注入,那么就再加上注解 @Resource(name="属性名")) 5.在Controller层的方法上加上注解@RequestMapping("requestAddress")表明该方法的请求地址 6.Dao层要加上注解@Repository表明这是数据库持久层 7.同样将dao实例注入到service层中。 8.配置视图解析器“InternalResourceViewResolver” 对于处理后的跳转进行统一配置 04 JSP和 Servlet有哪些相同点和不同点 JSP 是 Servlet技术的扩展,本质上是 Servlet 的简易方式,更强调应用的外表表达。JSP 编译后是"类 servlet"。Servlet 和 JSP 最主要的不同点在于,Servlet 的应用逻辑是在 Java 文件中,并且完全从表示层中的 HTML 里分离开来。而 JSP 的情况是 Java 和 HTML 可以 组合成一个扩展名为.jsp 的文件。JSP 侧重于视图,Servlet主要用于控制逻辑。 05 MVC的各个部分都有那些技术来实现 MVC 是 Model-View-Controller的简写。 Model 代表的是应用的业务逻辑(通过 JavaBean,EJB 组件实现) View 是应用的表示面(由 JSP 页面产生) Controller是提供应用的处理过程控制(一般是一个 Servlet) 通过这种设计模型把应用逻辑,处理过程和显 示逻辑分成不同的组件实现。这些组件可以进行交互和重用。 06 JSP隐视对象中四个作用域的作用范围 四个作用域从大到小的顺序为: appliaction>session>request>page application:全局作用范围,整个应用程序共享.生命周期为:应用程序启动到停止。 session:会话作用域,当用户首次访问时,产生一个新的会话,以后服务器就可以记住这个会话状态。 request:请求作用域,就是客户端的一次请求。 page:一个JSP页面。 以上作用范围使越来越小, request和page的生命周期都是短暂的 他们之间的区别就是:一个request可以包含多个page页(include,forward)。 07 项目的生命周期 1.需求分析 2.概要设计 3.详细设计(用例图,流程图,类图) 4.数据库设计(powerdesigner) 5.代码开发(编写) 6.单元测试(junit 白盒测试)(开发人员) svn版本管理工具(提交,更新代码,文档) 7.集成测试 (黑盒测试,loadrunner(编写测试脚本)(高级测试)) 8.上线试运行 (用户自己体验) 9.压力测试(loadrunner) 10.正式上线 11.维护 08 session和cookie的区别 session是存储在服务器端,cookie是存储在客户端的,所以安全来讲session的安全性要比cookie高,然后我们获取session里的信息是通过存放在会话cookie里的sessionid获取的。又由于session是存放在服务器的内存中,所以session里的东西不断增加会造成服务器的负担,所以会把很重要的信息存储在session中,而把一些次要东西存储在客户端的cookie里。 cookie确切的说分为两大类分为会话cookie和持久化cookie,会话cookie确切的说是存放在客户端浏览器的内存中,所以说他的生命周期和浏览器是一致的,浏览器关了会话cookie也就消失了,然而持久化cookie是存放在客户端硬盘中,而持久化cookie的生命周期就是我们在设置cookie时候设置的那个保存时间,然后我们考虑一问题当浏览器关闭时session会不会丢失,从上面叙述分析session的信息是通过sessionid获取的,而sessionid是存放在会话cookie当中的,当浏览器关闭的时候会话cookie消失所以我们的sessionid也就消失了,但是session的信息还存在服务器端,这时我们只是查不到所谓的session但它并不是不存在。那么,session在什么情况下丢失,就是在服务器关闭的时候,或者是sessio过期,再或者调用了invalidate()的或者是我们想要session中的某一条数据消失调用session.removeAttribute()方法,然后session在什么时候被创建呢,确切的说是通过调用session.getsession来创建,这就是session与cookie的区别。 原文发布时间为:2018-09-14 本文作者:全栈开发者社区 本文来自云栖社区合作伙伴“全栈开发者社区”,了解相关信息可以关注“全栈开发者社区”。

优秀的个人博客,低调大师

Leetcode 第一题 《两数之和》

原题目 定一个整数数组和一个目标值,找出数组中和为目标值的两个数。 你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。 示例: 给定 nums = [2, 7, 11, 15], target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9 所以返回 [0, 1] Leetcode给出了三种解法 暴力法 复杂度O(n^2) 两遍Hash表法,创建Hash表一次O(n),遍历查找O(n) 一遍Hash 一遍Hash算法说明 第一个元素添加到hash表,key是num,value是index。 计算target - 第二个元素, 如果在Hash表中,遍历结束。命中index(1)和当前元素index(2),返回[1,2] 如果Hash查找没有命中,将2添加到Hash表 遍历nums数组。 Python 实现 class Solution: def twoSum(self, nums, target): """ :type nums: List[int] :type target: int :rtype: List[int] """ dict = {} dict[nums[0]] = 0 for i in xrange(1,len(nums)): x = nums[i] if target-x in dict: return (dict[target-x], i) dict[nums[i]] = i 评分,战胜99.96%的python提交记录 屏幕快照 2018-07-12 下午12.55.14.png

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册