在四海学的时候,可能需要我们经过沉淀才会去想一些事情,有的时候不知道为什么这样或者那样的时候,从今天看是,胖先生打算给大家开辟一个课程,就是我的读书笔记. 首先我们来认识一下String字符串 一般对象都是通过new关键字生成的,但是String还有第二种生成方式,也就是我们最经常使用的直接的声明方式,比如 String str= "shxt"[建议写法等号两端空格],即是通过直接量"shxt"进行赋值的.对于String对象[String不是基本数据类型]来说,这…
前言 Autofac是一套高效的依赖注入框架. Autofac官方网站:http://autofac.org/ Autofac在Github上的开源项目:https://github.com/autofac/Autofac Autofac安装:通过VS的Nuget可以很方便的获取.   解析获取方式 Resolve class Program { static void Main(string[] args) { var builder = new ContainerBuilder(); bui…
建议52:推荐使用String直接量赋值 一.建议 String对象的生成方式有两种: 1.通过new关键字生成,String str3 = new String(“中国”); 2.直接声明,如:Str str = "a". 对于String对象来说,极力推荐使用直接声明的方式. 二.分析 Java为了避免在一个系统中大量产生String对象,于是就设计了一个字符串池(也有叫做字符串常量池String Pool或String Constant Pool或String Literal P…
<<C++ Primer>> 第四版 Exercise Section 4.3.1 部分Exercise 4.2.9 习题如下: 在自己本机执行如下程序,记录程序执行时间: #include "stdafx.h" #include <iostream> #include <string> #include <vector> #include <ctime> using namespace std; int main…
string的赋值 string s1="123456"; 一:     只能在刚开始定义的时候用: (1)     从后往前赋值     string s2(s1,3);     结果:s2="456" (2)     从某位置开始往后赋值     string s2(s1,0,3);     结果:s2="123" (3)     连续赋值1个字符(注:是一个字符!)     string s2(3,'A');     结果:s2="…
在研究String直接赋值与new String的区别之前我们需要先了解java中的字符串常量池的概念 字符串常量池 String类是我们平常项目中使用频率非常高的一种对象类型,jvm为了提升性能和减少内存开销,避免字符的重复创建,其维护了一块特殊的内存空间,即字符串池,当需要使用字符串时,先去字符串池中查看该字符串是否已经存在,如果存在,则可以直接使用,如果不存在,初始化,并将该字符串放入字符创常量池中. 使用String直接赋值 String str = "abc";可能创建一个或…
前言 Autofac Autofac是一套高效的依赖注入框架. Autofac官方网站:http://autofac.org/ Autofac在Github上的开源项目:https://github.com/autofac/Autofac Autofac安装:通过VS的Nuget可以很方便的获取. IoC/DI 关于IoC与DI的概念,网上有很多相关的博客,大家可以稍微了解一下,对比一下. 我个人的理解就是按照英文的中文翻译来理解的: IoC: Inversion of Control 控制反转…
String作为Java中最常用的引用类型,相对来说基本上都比较熟悉,无论在平时的编码过程中还是在笔试面试中,String都很受到青睐,然而,在使用String过程中,又有较多需要注意的细节之处. 1.String是不可变类. 这句话其实大家都很熟悉了,那么具体什么是不可变类呢?一般认为:当对象一旦创建完成后,在正常情况下,对象的状态不会因外界的改变而改变(对象的状态是指对象的属性,包括属性的类型及属性值). 首先看一个基本的例子: String s = "abc"; System.o…
jframe是什么? jframe是一个基于MIT协议开源的java web应用程序框架,汇聚了我们团队之于java web应用程序的核心架构思想以及大量最佳实践,并且持续在实际项目中不断完善优化. 简单的讲,jframe可以看成是MvcSolution(一个基于ASP.NET MVC的程序框架)的java实现,因为它们体现的都是完全同样的架构思想和非常相似的最佳实践. 如果你是一个java新手,想要学习如何成为java架构师,相信jframe和本系列文章将会给你很大的帮助: 如果你是学.NET…
jframe是什么? jframe是一个基于MIT协议开源的java web应用程序框架,汇聚了我们团队之于java web应用程序的核心架构思想以及大量最佳实践,并且持续在实际项目中不断完善优化. 简单的讲,jframe可以看成是MvcSolution(一个基于ASP.NET MVC的程序框架)的java实现,因为它们体现的都是完全同样的架构思想和非常相似的最佳实践. 如果你是一个java新手,想要学习如何成为java架构师,相信jframe和本系列文章将会给你很大的帮助: 如果你是学.NET…
C-string(char* const char*) basic_string<>特化版本:string charwstring wchar_tu16string char16_tu32string char32_t Setlocale是一个计算机函数,功能是用来配置地域的信息,设置当前程序使用的本地化信息.若 locale 为零(NULL),则不会改变地域化配置,返回当前的地域值,若系统尚未实作则返回 false.使用系统默认的设置调用setlocale(LC_ALL,"&quo…
下面是 Queryable 类 中最常用的两个排序的扩展方法: 1 2 public static IOrderedQueryable<TSource> OrderBy<TSource, TKey>(this IQueryable<TSource> source, Expression<Func<TSource, TKey>> keySelector); public static IOrderedQueryable<TSource>…
转载自:辛星和您一起学vim脚本第一节 如本文侵犯了您的版权,请联系windeal12@qq.com 这几天在网上看了辛星的一些vim教程博文,觉得很有收获,也很实用,适合入门,所以转载其中一篇留个网址. 辛星的vim教程已经有整理成pdf,在其博文中点击打开链接有下载链接.相信其他教程也写得不错,特此推荐. 最近把所有的编程工作交给了vim,但是vim实在是博大精深,以前写vim的配置文件只能靠百度谷歌去搜索,但是越来越发现搜索到的那点东西不仅非常零散,还跟我的需求不一样,因此,也就感觉有必要…
开心一刻 一男人站在楼顶准备跳楼,楼下有个劝解员拿个喇叭准备劝解 劝解员:兄弟,别跳 跳楼人:我不想活了 劝解员:你想想你媳妇 跳楼人:媳妇跟人跑了 劝解员:你还有兄弟 跳楼人:就是跟我兄弟跑的 劝解员:你想想你家孩子 跳楼人:孩子是他俩的 劝解员:死吧,妈的你活着也没啥价值了 前言 关于锁,相信大家都不陌生,一般我们用其在多线程环境中控制对共享资源的并发访问 单服务下,用 JDK 中的 synchronized 或 Lock 的实现类可实现对共享资源的并发访问 分布式服务下,JDK 中的锁就显…
例如如下: map<const char*, const char*> map_test; map_test["a"] = "a"; map_test["a"] = "a"; map_test["a"] = "a"; 实际上会将三个"a"插入到map中,因为三个key的指针不同,所以被认为是三个不同的key.而如果改为如下用法: map<string…
从来没有自己写过太多的技术性文章,博客里面的文章都是拷贝别人的东西,做一个笔记功能给自己用的.最近觉得应该写点自己的学习博客 https://aspnetboilerplate.com/ ABP框架,很久以前就看到园子里面的高手们在宣传和讲解了.自己也下载过源代码看过.曾经也想着是不是在项目里面用上它.但是总是想着这个东西很复杂,又封装了.感觉自己没有全局的把控能力.害怕上了项目之后歇菜了怎么办.这个周末在公司加班,和一个新来的年轻小伙子聊天,他的一句话给我很大的启发:这个年代写代码,当然是有第…
Print Description of "string":把 string 的信息输出到控制台.Copy:复制 string 的信息,包含变量名,类名和值.View Value As:以什么类型的格式来查看变量,默认情况下会自动推断类型.Edit Value:可以直接修改变量的值.在 Swift中无法修改Edit Summary Format:修改输出信息的格式,这里的修改会直接影响 Copy 出来的东西.在 Swift 中无效.Add expression:和断点类似,可以输入新的…
一.演示概述 此演示初步介绍了MEF的基本使用,包括对MEF中的Export.Import和Catalog做了初步的介绍,并通过一个具体的Demo来展示MEF是如何实现高内聚.低耦合和高扩展性的软件架构.演示中,针对于IBookService接口,有3个不同版本的实现,分别是ComputerBookServiceImp.HistoryBookServiceImp和MathBookServiceImp,然后通过MEF的导入导出及组装机制,分别在这3个版本的实现间替换,而这种替换并未通过配置文件之类…
    settings 调整 settings 中的设置是非常关键的,它们会改变 MyBatis 的运行时行为.下表描述了设置中各项的意图.默认值等. 设置参数 描述 有效值 默认值 cacheEnabled 该配置影响的所有映射器中配置的缓存的全局开关. true | false true lazyLoadingEnabled 延迟加载的全局开关.当开启时,所有关联对象都会延迟加载.特定关联关系中可通过设置fetchType属性来覆盖该项的开关状态. true | false false a…
import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; /** * @see InputStream转化为String String 转换为InputStream InputStream 转化为byte数组 byte转化为InputStream byte转化为String * @author…
[ 前言:以前搭了个简单的ELK日志系统,以我个人的感觉来说,ELK日志系统还是非常好用的.以前没有弄这个ELK日志系统的时候,线上的项目出了bug,报错了,要定位错误是什么,错误出现在哪个java代码文件里,每次都要在服务器上使用linux命令打开日志文件查看错误,简直繁琐无比. 搭了这个ELK日志系统之后,项目中的所有日志打印都发送到了ELK里面,然后通过ELK中的kibana视图界面 搜索 或 查看  各个时间段的日志,以及什么级别的日志,巨方便. 当然上次搭建的ELK日志系统只是个简单的…
String.StringBuilder.StringBuffer 主要区别在两点上: 速度效率上对比:StringBuilder>StringBuffer>String 线程安全上来说:StringBuffer是线程安全的,StringBuilder是线程不安全的 总结: String:不可变,适用于少量字符串拼接: StringBuilder:可变,适用于单线程字符串缓冲区进行大量操作: StringBuffer:可变,适用于多线程字符串缓冲区进行大量操作. 详细原理解析如下:(很详细,从…
一.Pycharm 使用小tips 1.1 pycharm创建项目时,选择Python环境,不使用默认的虚拟环境 1.2 如何在pycharm中查看python版本 路径:File-Settings-Project Interpreter  1.3 修改pycharm中的字体 路径:File-Settings-Editor--Front 1.4 配置pycharm可使用Ctrl+鼠标滚轮切换字体大小 路径:File-Settings-General 勾选Change front size (Zo…
编程基础很零碎 看了路飞学城的讲解视频,整体课程列表排列很清晰,每个视频都在十几分钟到二十几分钟之间,适合零碎化的的学习 第一章和第二章的前半部分可以较轻松地入门…
一.Django介绍 flask,FastApi是轻量级服务端开发框架 Django是重量级服务端开发框架 ORM:封装了数据库操作 form:校验请求数据 安装Django: pip install django==2.1.7  #指定版本安装,默认是安装最新版本 注意:最新版本的Django对mysql版本也有要求 二.Django命令 1.创建项目命令:django-admin startproject test_django 2.启动项目命令: python manage.py runs…
本文介绍从创建 net6.0 项目运行在 windows 开发环境的 docker 然后正式部署至 liunx 服务器. 1 windows10 安装 docker 下载docker-desktop 双击下载后的文件直接安装一直下一步到安装成功 打开 docker,点击设置找到 Docker Engine 设置国内镜像 国内镜像地址可以在阿里云找到,阿里云镜像加速器登录之后可以看到一个加速地址,复制出来加入设置 docker 的配置就可以 图片里的配置 json 如下: { "builder&q…
在Java中,字符串可以直接赋值或者使用new来新建,直接赋值的话是编译阶段(.class文件)中就将该字符串值放到常量池中,以后如果有其他变量直接赋予同样的值的话就不再分配内存空间,而是直接给它个引用地址:而使用new来创建的话是在程序运行时才分配的空间,是一个新的引用地址,可以通过inter()方法将字符串加入的常量池中,如果在常量池中已经存在该字符串,则返回其引用.在String类中,==是比较两个字符串的引用地址是否相同,equals比较的是两者的值是否相同(在其他的引用类中==和equ…
String类是final的.String str = new String("Hello"); //创建了两个对象系统会先创建一个匿名对象"Hello"存入堆内存(我们暂且叫它A),然后new关键字会在堆内存中又开辟一块新的空间,然后把"Hello"存进去,并且把地址返回给栈内存中的str, 此时A对象成为了一个垃圾对象,因为它没有被任何栈中的变量指向,会被GC自动回收.直接赋值,java语法就这么规定的.因为String类太常用了,这样直接赋…
String str1="ABC": 和String str2 = new String("ABC"); 有什么区别. String str1="ABC" 可能创建一个对象或者不创建对象,如果"ABC"这个字符串在java String池里不存在,会在java String池创建这个一个String对象("ABC").如果已经存在,str1直接reference to 这个String池里的对象. Stri…
String str1 = "ABC"; String str2 = new String("ABC"); String str1 = “ABC”;可能创建一个或者不创建对象,如果”ABC”这个字符串在java String池里不存在,会在java String池里创建一个创建一个String对象(“ABC”),然后str1指向这个内存地址,无论以后用这种方式创建多少个值为”ABC”的字符串对象,始终只有一个内存地址被分配,之后的都是String的拷贝,Java中称…