为您找到搜索结果:8628个
JavaScript字符串API
String.prototype.anchor()anchor()方法用于创建一个<a>html描元素conststr='我是html内容'.anchor('我是name属性值')console.log(str)//"<aname="我是name属性值">我是html内容</a>" String.prototype.bold()bold()方法用于创建<b>html元素conststr='aaa'.bold()console.log(str)//"<b>aaa</b>" String.prototype.charAt()charAt()方法用于返回字符串指定位置的字符'amz'.charAt()//'a'不传索引则默认为0'amz'.charAt(1)//'m' String.prototype.concat()concat()将多个字符串拼接在一起consta='aaa'constb='bbb'constc='ccc'.concat(a,b,'ddd')console.log(c)/...
JavaScript常用数组操作方法,包含ES6方法
concat()方法用于连接两个或多个数组。该方法不会改变现有的数组,仅会返回被连接数组的一个副本。vararr1=[1,2,3];vararr2=[4,5];vararr3=arr1.concat(arr2);console.log(arr1);//[1,2,3]console.log(arr3);//[1,2,3,4,5] join()方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的,默认使用','号分割,不改变原数组。vararr=[2,3,4];console.log(arr.join());//2,3,4console.log(arr);//[2,3,4] push()方法可向数组的末尾添加一个或多个元素,并返回新的长度。末尾添加,返回的是长度,会改变原数组。vara=[2,3,4];varb=a.push(5);console.log(a);//[2,3,4,5]console.log(b);//4push方法可以一次添加多个元素push(data1,data2....) pop()方法用于删除并返回数组的最后一个元素...
Javascript模块化编程
http://www.ruanyifeng.com/blog/2012/10/javascript_module.htmlhttp://www.ruanyifeng.com/blog/2012/10/asynchronous_module_definition.htmlhttp://www.ruanyifeng.com/blog/2012/11/require_js.html ...
JavaScript多种继承方式
https://github.com/mqyqingfeng/Blog/issues/16...
java二维字符数组的输入
java二维字符数组输入的方法有很多,这里简单介绍一种:importjava.util.Scanner;publicclasstest{publicstaticvoidmain(String[]args){Scannerscan=newScanner(System.in);intn=scan.nextInt();//n行intm=scan.nextInt();//m列String[]temp=newString[n+1];//字符串数组做中间变量for(inti=0;i<n;i++){temp[i]=scan.next();}char[][]p=newchar[n][m];//temp字符串数组转为二维数组p[n][m];for(inti=0;i<n;i++){for(intj=0;j<m;j++){p[i][j]=temp[i].charAt(j);System.out.println(p[i][j]);}}}}...
Java 性能测试的四项原则
绝大数的开发人员在日常工作过程中都会或多或少的遇见过性能问题,本文旨在阐述性能测试的理论,从而为性能分析和开发人员做指导。本文对于那些刚刚接触性能调优和正在解决问题的开发人员也能提供一些启发性的思路。 计算机软件作为人类智慧的结晶,帮助我们在这个日新月异的社会中完成了大量工作。我们的日常生活中已经离不开软件,玲琅满目的软件已经渗透到了我们生活的各个角落,令我们目不暇接。我们都希望软件变得更好,运行处理的速度更快,在当今硬件性能突飞猛进的变革中,软件性能的提升也是一个永不落伍的话题。软件性能测试的实质,是从哲学的角度看问题,找出其内在联系,因果关系,形式内容关系,重叠关系等等。假如这些关系我们在分析过程中理清了,那么性能测试问题就会变得迎刃而解。在软件开发过程中,性能测试往往在开发前期容易被忽略。直到有一天问题暴露后,开发人员被迫的直面这个问题,大多数情况下,这是令开发人员感觉到非常痛苦事情。所以在软件开发前期以及开发过程中性能测试的考量是必要的,那么具备相应理论知识和实践方法也是一个优秀工程师所应当具备的素养,这里我们概括有四项原则,这些原则可以帮助开发人员丰富、充实测试理论,系...
深入理解Java的接口和抽象类
深入理解Java的接口和抽象类 对于面向对象编程来说,抽象是它的一大特征之一。在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。这两者有太多相似的地方,又有太多不同的地方。很多人在初学的时候会以为它们可以随意互换使用,但是实际则不然。今天我们就一起来学习一下Java中的接口和抽象类。下面是本文的目录大纲: 一.抽象类 二.接口 三.抽象类和接口的区别 若有不正之处,请多多谅解并欢迎批评指正,不甚感激。 请尊重作者劳动成果,转载请标明原文链接: http://www.cnblogs.com/dolphin0520/p/3811437.html 在了解抽象类之前,先来了解一下抽象方法。抽象方法是一种特殊的方法:它只有声明,而没有具体的实现。抽象方法的声明格式为:1abstract void fun(); 抽象方法必须用abstract关键字进行修饰。如果一个类含有抽象方法,则称这个类为抽象类,抽象类必须在类前用abstract关键字修饰。因为抽象类中含有无具体实现的方法,所以不能用抽象类创建对象。 下面要注意一个问题:在《JAVA编程思...
JAVA设计模式总结之六大设计原则
从今年的七月份开始学习设计模式到9月底,设计模式全部学完了,在学习期间,总共过了两篇;第一篇看完设计模式后,感觉只是脑子里面有印象但无法言语。于是决定在看一篇,到9月份第二篇设计模式总于看完了,这一篇看完,脑子里面已经能够对绝大多数的设计模式能够说出其核心思想且可以画出类图也知道应用场景,算是一个进步,但可能还不能够特别熟练的使用,可能需要多多巩固和强化使用才能够完全理解设计模式的精髓所在。学习期间收获还是不少的:1、从只听过设计模式到学习了所有的设计模式,并写了不少设计模式的博客,在公司期间也总结了,只会限于公司资料保密政策无法带出,对这个我只能呵呵,博客园也写了部分博客,有兴趣的可以查看随笔分类设计模式系列。2、看源码和别人写的代码的时候,开始能够知道用的是什么模式,比如项目中典型的解释器模式,外观模式,策略模式等等,现在写代码也会考虑系统的可扩展性,以及如何来更好的设计,从而是代码更加优化和漂亮。3、遇到问题也会想是否可以采用设计模式来解决问题,对面向对象也进一步的理解了。下面来总结下自己所学习的设计模式,首先我们看下各个模式之间的关系图,下面这张图是网上比较典型的一个类图关系:...
JAVA设计模式总结之23种设计模式
总体来说设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。其实还有两类:并发型模式和线程池模式。用一个图片来整体描述一下: 总原则:开闭原则(OpenClosePrinciple)开闭原则就是说对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码,而是要扩展原有代码,实现一个热插拔的效果。所以一句话概括就是:为了使程序的扩展性好,易于维护和升级。想要达到这样的效果,我们需要使用接口和抽象类等,后面的具体设计中我们会提到这点。1、单一职责原则不要存在多于一个导致类变更的原因,也就是说每个类应该实现单一的职责,如若不然,就应该把类拆分。 2、里氏替换原则(LiskovSubstitutionPrinciple)里氏代换原则(LiskovSubstitu...
Java并发编程:volatile关键字解析
Java并发编程:volatile关键字解析 volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java5之后,volatile关键字才得以重获生机。 volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的事情。由于volatile关键字是与Java的内存模型有关的,因此在讲述volatile关键之前,我们先来了解一下与内存模型相关的概念和知识,然后分析了volatile关键字的实现原理,最后给出了几个使用volatile关键字的场景。 以下是本文的目录大纲: 一.内存模型的相关概念 二.并发编程中的三个概念 三.Java内存模型 四..深入剖析volatile关键字 五.使用volatile关键字的场景 若有不正之处请多多谅解,并欢迎批评指正。 请尊重作者劳动成果,转载请标明原文链接: http://www.cnblogs.com/dolphin0520/p/3920373.html 大家都知道,计算机在执行程序时,每条指令都是在CPU中...
java 非缓冲与缓冲数据读取比较
首先不适用缓存技术,读取数据://非缓冲计时packagecom.swust;importjava.io.*;/**功能:创建一个程序,写10000个随机双精度的数到一个文件中,同时测试运用缓冲和非缓冲技术**读取数据,求平均数,进行这种操作所需要的时间*分析:*在写开始操作之前,先获取当前时间*再将它同操作结束后的时间作比较,以此判断各个操作的时间*实现:*仍使用两个类:*/publicclassflowTest{publicstaticvoidmain(String[]args){doublesum=0;try{longstart=System.currentTimeMillis();FileInputStreamfileIn=newFileInputStream("sample.ini");DataInputStreamin=newDataInputStream(fileIn);for(inti=0;i<10000;i++){sum+=in.readDouble();}in.close();longstop=System.currentTimeMillis();System...
java 非缓冲与缓冲数据写入比较
//非缓冲计时packagecom.swust;importjava.io.*;/**功能:创建一个程序,写10000个随机双精度的数到一个文件中,同时测试运用缓冲和非缓冲技术*进行这种操作所需要的时间*分析:*写双精度数到磁盘中的代码和之前文章类似。在写开始操作之前,先获取当前时间*再将它同操作结束后的时间作比较,以此判断各个操作的时间*实现:*仍使用两个类:*/publicclassflowTest{publicstaticvoidmain(String[]args){try{longstart=System.currentTimeMillis();FileOutputStreamfs_out=newFileOutputStream("sample.ini");DataOutputStreamout=newDataOutputStream(fs_out);for(inti=0;i<10000;i++){out.writeDouble(Math.random());}out.close();longstop=System.currentTimeMillis();System.o...
java 文件操作 读取txt文本(兄弟常开心)
测试一下读取文本的另一种方法:该方法只使用一个类读取了文件注意:buffer和read方法中读取指定长度的一致packagecom.swust;importjava.io.*;/**数据流包括DataInputStream、DataOutputStream类,*两个类的实例化完成流的操作*/publicclassflowTest{publicstaticvoidmain(String[]args){bytebuffer[]=newbyte[2048];//TODOAuto-generatedmethodstubStringpath="C:/test/1/";StringinforTxt="1.txt";StringnewPath=path+inforTxt;try{FileInputStreamfileInput=newFileInputStream(newPath);intbytes=fileInput.read(buffer,0,2048);Stringstr=newString(buffer,0,bytes);System.out.println(str);fileInput.c...
java 文件操作 写入和读取(小结一)
参考了这篇博客并优化,谢谢:http://blog.sina.com.cn/s/blog_99201d890101b4le.html功能: 实现通过两个类完成先写入文件,再读取数据计算显示packagecom.swust;importjava.io.*;/**数据流包括DataInputStream、DataOutputStream类,*两个类的实例化完成流的操作*/publicclassflowTest{publicstaticvoidmain(String[]args)throwsIOException{//TODOAuto-generatedmethodstubStringusername="1";Stringpath="C:/test/"+username;StringinforTxt="msg.db";StringnewPath=path+inforTxt;FileOutputStreamfileOut=newFileOutputStream(newPath);DataOutputStreamout=newDataOutputStream(fileOut);//定义...