Welcome 微信登录

首页 / 操作系统 / Linux

XPath 详解及总结

XPath 详解及总结

XPath简介XPath是W3C的一个标准。它最主要的目的是为了在XML1.0或XML1.1文档节点树中定位节点所设计。目前有XPath1.0和XPath2.0两个版本。其中Xpath1.0是1999年成为W3C标准,而XPath2.0标准的确立是在2007年。W3C关于XPath的英文详细文档请见:http://www.w3.org/TR/xpath20/ 。XPath是一种表达式语言,它的返回值可能是节点,节点集合,原子值,以及节点和原子值的混合等。X...
如何使用XSLT的一个示范

如何使用XSLT的一个示范

写了个XSLT小示范,仅希望能给初学者一点参考价值。实例仅为了更多的应用到XSLT的各个元素去表现功能而并非最佳实践。在读这篇文章之前你应该就关于XSLT的基础概念有一些基本了解以及对XPath有比较熟练的掌握,因为XSLT是基于XPath去匹配需要应用的模板以及定位节点等。这篇文章不再赘述,在这篇实例中主要应用了以下一些常用的XSLT元素,如:<xsl:stylesheet>,<xsl:apply-templates>,<x...
Linux模块编程框架

Linux模块编程框架

Linux是单内核系统,可通用计算平台的外围设备是频繁变化的,不可能将所有的(包括将来即将出现的)设备的驱动程序都一次性编译进内核,为了解决这个问题,Linux提出了可加载内核模块(Loadable Kernel Module,LKM)的概念,允许一个设备驱动通过模块加载的方式,在内核运行起来之后"融入"内核,加载进内核的模块和本身就编译进内核的模块一模一样。一个程序在编译的地址的相对关系就已经确定了,运行的时候只是进行简单的偏移,为了使模块加载进内核后能...
Python中的字符串与字符编码详解

Python中的字符串与字符编码详解

本节内容:前言相关概念Python中的默认编码Python2与Python3中对字符串的支持字符编码转换一、前言Python中的字符编码是个老生常谈的话题,同行们都写过很多这方面的文章。有的人云亦云,也有的写得很深入。近日看到某知名培训机构的教学视频中再次谈及此问题,讲解的还是不尽人意,所以才想写这篇文字。一方面,梳理一下相关知识,另一方面,希望给其他人些许帮助。Python2的 默认编码 是ASCII,不能识别中文字符,需要显式指定字符编码;Python...
Python流程控制语句

Python流程控制语句

人们常说人生就是一个不断做选择题的过程:有的人没得选,只有一条路能走;有的人好一点,可以二选一;有些能力好或者家境好的人,可以有更多的选择;还有一些人在人生的迷茫期会在原地打转,找不到方向。对于相信有上帝的人来讲,这就好像是上帝事先为我们制定好了人生路线,也好像是那些神仙为唐曾师徒的取经之路提前设置的重重磨难,上帝和神仙掌控了一切。编程语言可以模拟人类生活的方方面面,程序员就像上帝和神仙一样可以通过编程语言中特殊的关键字控制程序的执行过程,这些关键字组成的...
Python中的运算符

Python中的运算符

说完常用的Python数据类型,再来说下运算符。运算符用于将各种类型的数据进行运算,让静态的数据跑起来。编程语言中的运算大致分为以下几个大类:算术运算, 用于加减乘除等数学运算赋值运算,用于接收运算符或方法调用返回的结果比较运算, 用于做大小或等值比较运算逻辑运算,用于做 与、或、非运算位运算, 用于二进制运算每种运算中所包含的符号称为相应的运算符,如 算术运算符、比较运算符等。一、算术运算运算(符)说明实例+两个对象相加2 + 3 结果为 5-两个对象相...
Python数据类型之“集合(Sets)与映射(Mapping)”

Python数据类型之“集合(Sets)与映射(Mapping)”

一、集合类型(Sets)集合对象是不同的(不可重复)hashable对象的无序集合。常见用法包括:成员关系测试、移除序列中的重复、以及科学计算,例如交集、并集、差分和对称差分。通俗点来说,集合是一个无序不重复元素的数据集,其基本功能是进行成员关系测试和消除重复元素。目前有两种内置的集合类型:set 和 frozenset。set类型是可变的--可以使用add() 和 remove()等方法更改其内容。由于它是可变的,它没有hash值,因此它不能被当做字典的...
Python数据类型之“文本序列(Text Sequence)”

Python数据类型之“文本序列(Text Sequence)”

Python中的文本序列类型Python中的文本数据由str对象或字符串进行处理。1.字符串字符串是Unicode码值的不可变序列。字符串字面量有多种形式:单引号:"允许嵌入"双"引号"双引号:"允许嵌入"单"引号"三引号:"""三个单引号""", """三个双引号"""说明:a) 三引号的字符串可以跨越多行,所关联的空格将包含在字符串文字中;b) 字符串也可以使用str构建函数从其他对象创建;c) 因为没有单独的“字符”类型,因此...
Python数据类型之“序列概述与基本序列类型(Basic Sequences)”

Python数据类型之“序列概述与基本序列类型(Basic Sequences)”

列是指有序的队列,重点在"有序"。一、Python中序列的分类Python中的序列主要以下几种类型:3种基本序列类型(Basic Sequence Types):list、tuple、range专门处理文本的附加序列类型(Text Sequence Types):str专门处理二进制数据的附加序列类型(Binary Sequence Types): bytes、bytearray、memoryview按照序列是否可被改变分类:可变序列: list不可变序列...
Python数据类型之“数字(numerics)”

Python数据类型之“数字(numerics)”

下一节内容说的是“Python基本语法”,本节主要讲下Python中的数据类型。存储在内存中的数据通常有两个属性:在内存中的存放位置:这个存放位置通过变量名可以找到;在内存中的存放方式:这个由数据类型决定,如占几个字节的空间、占用空间是否需要连续等。Python中有很多内置类型(built-in types),内置类型可以理解为构建在Python Interpreter(Python解释器)里面的类型。Python中主要的内置类型有...
Python基础语法

Python基础语法

学习一门编程语言,通常是学习该语言的以下几个部分的内容:基础语法:如,变量的声明与调用、基本输出语句、代码块语法、注释等;数据类型:通常都为 数字、字符串、布尔值、数组、链表、Map、Set等;运算符:算术运算符、赋值运算符、比较运算符、逻辑运算符、位运算符等;流程控制语句:分支语句、循环语句;类的定义与使用:这个是面向对象编程语言才有的内容;常用API的使用:常用方法、工具类或模块的使用。掌握上面的内容,就算是对一门编程语言入门了,剩下的就是不断的在使用...
Python详细介绍

Python详细介绍

本节内容Python简史Python是一门什么样的语言?Python的优点与缺点Python解释器一、Python简史历史背景在20世纪80年代,IBM和苹果已经掀起了个人电脑的浪潮。但是在今天看来,当时的个人电脑的配置都很低,以至于一个大的数组就能把内存占满。为了让程序能够运行,当时所有编程语言编译器的核心就是尽量的去做优化。为了提高程序运行效率,编程语言迫使程序员去像计算机一样思考,以便写出更符合计算机口味的程序。在那个时代,程序猿生活在水深火热之中,...
JDK1.7 HashMap 源码分析

JDK1.7 HashMap 源码分析

概述HashMap是Java里基本的存储Key、Value的一个数据类型,了解它的内部实现,可以帮我们编写出更高效的Java代码。本文主要分析JDK1.7中HashMap实现,JDK1.8中的HashMap已经和这个不一样了,后面会再总结。正文HashMap概述HashMap根据键的hashCode值获取存储位置,大多数情况下可以直接定位到它的值,因而具有很快的访问速度,但遍历顺序却是不确定的。 HashMap最多只允许一条记录的键为null,允许多条记录...
谈谈Java中的ThreadLocal

谈谈Java中的ThreadLocal

什么是ThreadLocal ThreadLocal一般称为线程本地变量,它是一种特殊的线程绑定机制,将变量与线程绑定在一起,为每一个线程维护一个独立的变量副本。通过ThreadLocal可以将对象的可见范围限制在同一个线程内。跳出误区 需要重点强调的的是,不要拿ThreadLocal和synchronized做类比,因为这种比较压根就是无意义的!sysnchronized是一种互斥同步机制,是为了保证在多线程环境下对于共享资源的正确访问。而Threa...
LinkedHashMap源码详解

LinkedHashMap源码详解

序言本来是不打算先讲map的,但是随着对set集合的认识,发现如果不先搞懂各种map,是无法理解set的。因为set集合很多的底层就是用map来存储的。比如HashSet就是用HashMap,LinkedHashSet就是用LinkedHashMap。所以打算把map讲完把。一、LinkedHashMap先来说说它的特点,然后在一一通过分析源码来验证其实现原理1、能够保证插入元素的顺序。深入一点讲,有两种迭代元素的方式,一种是按照插入元素时的顺序迭代,比如...
Java类加载基本过程

Java类加载基本过程

基本过程:根据类的全限定名称加载定义类的二进制字节流。将字节流代表的静态存储结构转化为方法区的运行时数据结构内存中生成一个代表这个类的java.lang.Class对象,作为方法去这个类的各种数据访问入口数组类本身不通过类加载器创建,由Java虚拟机直接创建,数组类的元素类型由类加载器加载。数组类的元素类型:数组去掉所有维度后的类型,文件格式验证:0xCAFEBABY 魔数开头;主次版本号当前虚拟机可处理;常量类型;索引执行类型;utf8编码数据类型,元数...
Android中Activity的四大启动模式实例讲解

Android中Activity的四大启动模式实例讲解

作为Android四大组件之一,Activity可以说是最基本也是最常见的组件,它提供了一个显示界面,从而实现与用户的交互,作为初学者,必须熟练掌握。今天我们就来通过实验演示,来帮助大家理解Activity的四大启动模式。演示效果如下:第一步:实验前准备,相关配置文件以及Activity的建立(1)AndroidMainfest.xml配置文件 1 <?xml version="1.0" encoding="utf-8"?> 2 <man...
Linux字符设备驱动框架笔记

Linux字符设备驱动框架笔记

字符设备是Linux三大设备之一(另外两种是块设备,网络设备),字符设备就是字节流形式通讯的I/O设备,绝大部分设备都是字符设备,常见的字符设备包括鼠标、键盘、显示器、串口等等,当我们执行ls -l /dev的时候,就能看到大量的设备文件,c就是字符设备,b就是块设备,网络设备没有对应的设备文件。编写一个外部模块的字符设备驱动,除了要实现编写一个模块所需要的代码之外,还需要编写作为一个字符设备的代码。驱动模型Linux一切皆文件,那么作为一个设备文件,它的...
Java 的设计模式之一装饰者模式

Java 的设计模式之一装饰者模式

刚开始接触装饰者的设计模式,感觉挺难理解的,不够后来花了一个晚上的时间,终于有头绪了装饰者设计模式:如果想对已经存在的对象进行装饰,那么就定义一个类,在类中对已经有的对象进行功能的增强或添加另外的行为,这个类就叫装饰者类。被修饰的类叫被装饰者类,是已经存在有的功能。在装饰者类之间又可以互相装饰特点: 1.装饰类通过构造方法来接收被装饰者的对象,调用它里面的功能或行为 2. 基于对被装饰对象的功能进行扩展,提供更强大的功能Java中的IO流是...
Java中Eclipse的使用

Java中Eclipse的使用

Eclipse是跨平台的自由集成开发环境(IDE),初衷主要为Java语言的定制。第一次使用就喜欢上了它。它可以帮我们导入包,而不需要我们导入,有很多快捷键提供我们使用,方便节省时间;最值得我喜欢的是胜任了在同一个软件可以进行编写、编译环境和运行环境的集成等等,而且它是开源代码刚开始进入界面的时候,设置工作空间,就是代码的存储路径创建第一个程序:1.Fille 2.New à project --- > java --- > ja...
<< 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 >>