服务端
- REST URL
- SOAP xml
- 开发人员使用
- 部署人员使用
- JAVA SERVER PAGE
- SERVLET(中间件容器)
- JSP等于一个SERVLET
- 切开主业务和子业务的关系
- 十进制0~9不能以0开头
- 十六进制以0X开头
- 八进制以0开头
- float 32位
- double 64位
- byte short char 不能相互转换
- 右移
· {
int i=32;
int j=i>>32;
//结果是32
}
- StringBuffer类用于内容可以改变的字符串
- 可以使用StringBuffer来对字符串的内容进行动态操作,不会产生额外的对象
方法
- int capacity( ) 返回当前容量
- int length( ) 返回长度(字符数)
- StringBuffer reverse( ) 将此字符序列用其反转形式取代
- void setCharAt(int,char) 将给定索引处的字符设置为 ch
- void delete(int begin,int end) 移除此序列的子字符串中的字符
- char charAt(int) 返回此序列中指定索引处的 char 值
- String toString( ) 将StringBuffer对象转换成相应的String
- append(String str) 将指定的字符串追加到此字符序列
- append(int num) 将 int 参数的字符串表示形式追加到此序列
- append(Object o) 追加 Object 参数的字符串表示形式
- insert(int index,String str) 将字符串插入此字符序列中
- insert(int index,char ch) 将字符插入此字符序列中
- insert(int index,Object o) 将 Object 参数的字符串表示形式插入此字符序列中
- StringBuilder类是一个可变的字符序列。
- JDK自从5.0版本后引入。
- StringBuilder类被设计用作 StringBuffer 的一个简易替换,用在字符串缓冲区被单个线程使用的时候 。
StringBuffer和StringBuilder的区别
- Java中定义了String与StringBuffer两个类来封装对字符串的各种操作
- String类与StringBuffer类都被放到了java.lang包中String类对象中的内容初始化不可以改变
- StringBuffer类对象中的内容可以改变
- StringBuffer和StringBuilder都是长度可变的字符串。
- StringBuffer类是线程安全的;
- StringBuilder类是线程不安全的。
- StringBuffer在JDK1.0中就有,而StringBuilder是在JDK5.0后才出现的。
- StringBuilder的一些方法实现要比StringBuffer快些。
- 日历类
Collection接口
- 一组称为元素的对象
- 一个Collection中可以放不同类型的数据
- 是Set接口和List接口的父类
- 是否有特定的顺序以及是否允许重复,取决于它的实现
- Set - 无序的集合;不允许重复HashSet
- List - 有序的集合;允许重复ArrayList、LinkedList
- boolean add(Object) 集合中加入一个对象,成功时返回true
- boolean addAll(Collection) 集合中加入另外一个集合对象
- int size() 集合内容纳的元素数量
- boolean isEmpty() 集合是否为空
- boolean contains(Object) 集合内是否含有参数对象
- Iterator iterator() 产生一个迭代器
- Object[] toArray() 返回一个包含所有元素的对象数组
- Object[] toArray(Object[]) 把所有元素放入对象数组中
- boolean remove(Object) 从集合中删除对象
- boolean removeAll(Collection) 清空指定集合
- boolean containsAll(Collection) 判断集合内是否包含子集
- boolean retainAll(Collection) 删除子集合不包含的元素
- void clear() 清空集合
- Object[] toArray(Object[]) 把所有元素放入对象数组中
- Collection的子接口
- 用来包含一组 无序无重复 的对象
- 无序 — 是指元素存入顺序和集合内存储的顺序不同
- 无重复 — 两个对象e1和e2,如果e1.equals(e2)返回true,则认为e1和e2重复
- Set有两种主要的集合实现类:
- HashSet — HashSet的特性在于其内部对象的散列存取,即采用哈希技术
- TreeSet — TreeSet存入的顺序跟存储的顺序不同,但是存储是按照排序存储的
- Collection的子接口
- 用来包含一组 有序有重复 的对象
- List中的元素都对应一个整数型的序号,记载其在容器中的位置,可以根据序号存取容器中的元素
- List有两种主要的集合实现类:
ArrayList
LinkedList - 方法 含义
- void add(int index,Object element) 在列表中的index位置,添加element元素
- Object get(int index) 返回列表中指定位置的元素
- int indexOf(Object o) 在list中查询元素的索引值,如不存在,返回-1。
- int lastIndexOf(Object o) List中如果存在多个重复元素,indexOf()方法返回第一个匹配元素的index。lastIndexOf(o)是返回最后一个匹配元素的index.
- ListIterator listIterator() 返回列表中元素的列表迭代器
- Object remove(int index) 移除列表中指定位置的元素
- Object set(int index,Object element) 用指定元素替换列表中指定位置的元素
- ArrayList是线性顺序存储的,是一种线性表
- 它的特性和数组很接近,数组大小是不变的,而ArrayList的大小是可以动态改变的
- 是数据结构中链表的java实现
- 相对于List来说,LinkedList最主要的功能方面的增强是可以在List的头部和尾部添加、删除、取得元素,直接提供了这些方法的实现。所以它可以非常方便的实现我们数据结构中的常见的Stack(栈)、queue(队列)等
- void addFirst(Object o) 将给定元素插入此列表的开头
- void addLast(Object o) 将给定元素追加到此列表的结尾
- Object getFirst() 返回此列表的第一个元素
- Object getLast() 返回此列表的最后一个元素
- Object removeFirst() 移除并返回此列表的第一个元素
- Object removeLast() 移除并返回此列表的最后一个元素
- ArrayList是线性顺序存储
- LinkedList对象间彼此串连起来的一个链表
- ArrayList适合随机查询的场合
- LinkedList元素的插入和删除操作性高
- 从功能上,LinkedList要多一些
- Iterator对象称作迭代器,用来方便的实现对容器内的元素进行遍历操作
- 所有实现了Collection接口的集合类都有一个iterator( )方法,返回一个实现了Iterator接口的对象
- Iterator对象实现了统一的一个用来遍历
Collection中对象的方法 - Iterator是为遍历而设计,能够从集合中取
出元素和删除元素,但是没有添加元素的
功能 - Iterator的功能上比较简单,使用中,只
能单向移动
- Object next() 返回游标右边的元素并将游标移动到下一个位置
- boolean hasNext() 判断游标右边是否有元素
- void remove() 删除游标左边的元素,在执行完next之后,该操作只能执行一次
for (int i = 1; i < 6; i++) {
set.add(new Integer(i));
}
【JAVA学习笔记】Iterator
while(it.hasNext()){
Integer j = (Integer)it.next();
System.out.println(j);
//it.remove();
//it.remove();
}
System.out.println(set);
Map接口
- Map内存储的是键/值对这样以成对的对象组(可以把一组对象当成一个元素),通过“键”对象来查询“值”对象
- Map是不同于Collection的另外一种集合接口
- Map中,key值是唯一的(不能重复),而key对象是与value对象关联在一起的
- HashMap — key/value对是按照
Hash算法存储的 - TreeMap — key/value对是排序
(按key排序)存储的
- Object put(Object key,Object value) 将指定的值与此映射中的指定键相关联
- void putAll(Map t) 将映射t中所有映射关系复制到此映射中
- Object get(Object key) 返回此映射中映射到指定键的值
- Object remove(Object key) 若存在此键的映射关系,将其从映射中移除
- boolean containsKey(Object key) 若此映射包含指定键的映射关系,返回 true
- boolean containsValue(Object value) 若此映射为指定值映射一个或多个键,返回 true
- int size() 返回此映射中的键-值映射对数
- void clear() 从此映射中移除所有映射关系
- boolean isEmpty() 若此映射未包含键-值映射关系,返回 true
- Set keySet() 返回此映射中包含的键的 set 视图
- Set内存放的元素不允许重复,List存放的元素有一定的顺序。
- Map的应用主要在利用键/值对进行快速查询。
- ArrayList和LinkedList的区别在于随机查询性能上ArrayList要好,但LinkedList的中间元素的插入与删除性能好 。
- HashSet和TreeSet的区别在于集合内元素是否排序 。