- 浏览: 60300 次
- 性别:
- 来自: 深圳
最新评论
-
ZSYCW:
很好
关于代码整洁 -
haibin369:
babydeed 写道引用var array = [1, 2, ...
JavaScript中的数组相关方法 -
babydeed:
引用var array = [1, 2, 3, 4]; ...
JavaScript中的数组相关方法 -
haibin369:
greatghoul 写道那如何避免精度误差呢?
这个嘛,估计 ...
关于JavaScript的数值 -
greatghoul:
那如何避免精度误差呢?
关于JavaScript的数值
文章列表
以下代码的测试环境为:jQuery-2.1.4,IE 11,FireFox 40。
1. text
取值与赋值
/* 原生JS */
var txtInput = document.getElementById("txtInput");
var value = txtInput.value;
txtInput.value = "new value";
/* jQuery */
var $txtInput = $("#txtInput");
var value = $txtInput.val() ...
一、简介
所谓阻塞队列,其实就是支持下面这两种阻塞功能的队列:
当队列为空时,读取该队列可以阻塞直到队列不为空;
当队列已满时,写入该队列可以阻塞直到队列不为满;
这种阻塞队列主要用于可以用来构建生产者-消费者模型,生产者只需要往队列中发送消息,而消费者也只需要专注于从队列中读取消息,剩下的同步、阻塞细节都交给阻塞队列把。
Java提供了下面7种阻塞队列,区别于底层数据结构的不同:
ArrayBlockingQueue :一个由数组结构组成的有界阻塞队列。
LinkedBlockingQueue :一个由链表结构组成的有界阻塞队列。
PriorityBlockingQu ...
一、个人见解
通俗来说,实例变量就是在每个具体实例对象级别的变量,类变量(静态变量)就是在类级别的变量,类似的,线程本地变量就是在线程级别存放的变量,而ThreadLocal就是用来提供线程本地变量存取的工具。在网上各种搜,结合自己的理解,觉得ThreadLocal适合用户以下场景(纯属个人见解,有不对地方或有更好的使用场景请赐教哈):
访问线程不安全对象。比如下面SimpleDateFormat的使用,这是个线程不安全的类,不想每次都new一个对象用完即弃?把它放进ThreadLocal里吧,这样每个线程就只拥有一个实例了。
存放线程级别的状态对象。例如上下文对象、用户会话这种对象,不 ...
HTML中<select/>元素如下:
<select id="select">
<option value="opt1">Option1</option>
<option value="opt2">Option2</option>
<option value="opt3">Option3</option>
</select>
1. 获取选中向项的文本与值:
va ...
一、简介
JUnit4引入了Theory(理论)机制,在JUnit的官方介绍上(https://github.com/junit-team/junit/wiki/Theories)看了半天,发现其实这个概念类似于参数化测试。在参数化测试中,我们需要给定所有具体的测试数据组,而在理论测试中,用户只需给定了一些数据,JUnit自动利用这些数据组合出各种各种可能的组合来执行测试。
二、使用
要执行Theory测试,必须要使用org.junit.experimental.theories.Theories这个Test Runner。
@RunWith(Theories.class)
...
一、Rule简介
Rule是JUnit4中的新特性,它让我们可以扩展JUnit的功能,灵活地改变测试方法的行为。JUnit中用@Rule和@ClassRule两个注解来实现Rule扩展,这两个注解需要放在实现了TestRule借口的成员变量(@Rule)或者静态变量(@ClassRule)上。@Rule和@ClassRule的不同点是,@Rule是方法级别的,每个测试方法执行时都会调用被注解的Rule,而@ClassRule是类级别的,在执行一个测试类的时候只会调用一次被注解的Rule
二、JUnit内置Rule
JUnit4中默认实现了一些常用的Rule:
Tempor ...
一、使用JUnit的一般测试语法
org.junit.Assert类里有各种断言方法,大部分情况下我们会像下面这个例子一样编写测试:
public class AssertThatTest {
private int id = 6;
private boolean trueValue = true;
private Object nullObject = null;
private String msg = "Hello World";
@Test
public void testAssert() thr ...
一、一个简单的测试
编写一个只有一种运算的计算器:
public class Calculator {
public static double divide(int dividend, int divisor) {
return dividend / divisor;
}
}
为这个方法编写测试:
public class CalculatorTest {
//允许误差
private static final double DELTA = 0.01;
@Test
public voi ...
一、简介
这个估计大家都比我清楚了,JUnit是一个单元测试框架,我们可以基于它编写用来测试代码的代码,从而更方便地进行回归测试。
二、编写测试与断言(Assertion)
在Junit4中,编写一个测试方法只需要使用@Test注解并保证被注解的方法满足以下条件
方法可见性为public
方法无返回值
方法没有参数
在一个测试中,往往需要满足某种条件才能断定测试成功,而不仅仅是测试方法执行完毕,org.junit.Assert对象提供了各种断言方法,用于判定程序的执行结果是否符合预期,从而通过测试。
例如我们需要测试以下类的两个方法:
package org ...
一、基本概念
在开发Java程序,尤其是Java EE应用的时候,总是免不了与各种配置文件打交道。以Java EE中典型的S(pring)S(truts)H(ibernate)架构来说,Spring、Struts和Hibernate这三个框架都有自己的XML格式的配置文件。这些配置文件需要与Java源代码保存同步,否则的话就可能出现错误。而且这些错误有可能到了运行时刻才被发现。把同一份信息保存在两个地方,总是个坏的主意。理想的情况是在一个地方维护这些信息就好了。其它部分所需的信息则通过自动的方式来生成。JDK 5中引入了源代码中的注解(annotation)这一机制。注解使得Java源代码 ...
枚举是将一组具名的值的有限集合创建为一种新的类型,而这些具名的值可以作为常规的程序组件使用,常用来表示一组常数。在Java中,除了不能继承自一个enum之外,我们基本上可将enum看作一个常规的类。
基本用法:
enum Color {
BLUE, WHITE, GREEN
}
public class EnumTest {
public static void main(String[] args) {
//values()方法返回代表枚举中所有值的数组
for (Color color : Color.values ...
将一个类的定义放在另一个类的定义内部,成为内部类。
一、各种形式的内部类及其基本使用
成员内部类:作为外部类的一个成员存在,与外部类的属性、方法并列的类。
class Outer{
private int field = 1;
private int anotherField = 2;
//成员内部类
public class Inner{
private int field = 10;
//成员内部类不能有静态变量与方法,否则出现编译错误:
// Inner classes can ...
一、PL/SQL代码基本结构
Header(块头单元)
只有命名代码块(例如存储过程,函数)才有,这个单元确定了这个命名块或者程序的调用方式。
Declaration Section (声明单元,可选)
声明变量、常量、用户自定义的数据类型以及游标等。
Execution Section(执行单元)
主程序体,包含何种合法的PL/SQL语句。
Exception Section(异常处理单元,可选)
异常处理程序,当主程序体中代码出现异常时执行这一部分的代码。
二、基本流程控制结构
IF条件判断
IF condition_1 THEN
statements ...
ABS(expression)
返回expression表达式的绝对值。
SELECT ABS(1-9) FROM DUAL返回8;
SELECT ABS(CONCAT('-1', '.1')) FROM DUAL返回1.1
CONCAT(str1, str2)
与“||”操作符相同,返回由str1和str2拼接而成的字符串,如果str1为null,将返回str2;如果str2为null,则返回str1;如果都为null,则返回null。
SELECT CONCAT('test', 'string') FROM DUAL返回'teststring'
LENGTH ...
一、XMLHttpRequest 对象 (XHR)
XMLHttpRequest 对象用于在后台与服务器交换数据,有了这个对象,我们可以:
在不重新加载页面的情况下更新网页;
在页面已加载后从服务器请求数据;
在页面已加载后从服务器接收数据;
在后台向服务器发送数据。
二、创建XHR
//创建XMLHttpRequest对象
function createXMLHttpRequest(){
var xmlHttpRequest;
if(window.XMLHttpRequest){
//IE8+, FF, Chrome等浏览器内置XHR对象,可以直接创 ...