集合简单学习笔记

对象的容纳
1.数组 
初始化 3种方式
返回:可以通过返回指针指向数组,用的时候肯定存在,用完回收
2.集合
vector 
通过size方法知道有多少个元素,防止越界
addElement插入对象的唯一方式
elementAt()提取对象的唯一方式

Enum
Enumeration e = vec.element(); 获得对虚列的一个 “枚举”
e.hasMoreElements()
e.nextElement()

java中System.out.println(" " + e....)一旦编译器碰到一个字串 后面跟随一个 + 
就希望后面也是一个字串 并自动调用toString方法

Bitset Bitset bb = new Bitset(); bb.set(参数); bb.clear(参数)  
随机数的获取 Random rd = new Random()
byte bt = (byte)rd.nextInt()

Stack 后进先出 push pop
继承于vector,所以可以使用addElement 和 elementAt方法

Hashtable Hashtable ht = new Hashtable()
get(key) put(key, 对象) ht.containsKey

String 通过反编译查看差别:反编译-》命令行进入.class文件目录下,javap -c 类名
对String对象的任何改变都不影响到原对象,相关的任何change操作都会生成新的对象,
每次变化需要重新赋值
String += "aa"循环 内部多次new StringBuilder;用append方法进行附加
StringBuffer线程安全
StringBuilder > StringBuffer > String不是绝对的
  比如String str = "hello"+ "world"的效率就比 StringBuilder st  = new StringBuilder()
.append("hello").append("world")要高。
  当字符串相加操作或者改动较少的情况下,使用 String str="hello"
  当字符串相加操作较多的情况下,建议使用StringBuilder,如果采用了多线程,则使用StringBuffer。

输入Scanner input = new Scanner(); String shuRu = input.next();
list按顺序存储;set值不能能重复,map键值唯一,否则覆盖,后两者不关注添加顺序
如果添加元素的顺序很重要,应该使用 LinkedHashSet或者LinkedHashMap.
ArrayList , Vector , LinkedList 是 List 的实现类
ArrayList 是线程不安全的, Vector 是线程安全的,这两个类底层都是由数组实现的
LinkedList 是线程不安全的,底层是由链表实现的  
HashTable 和 HashMap 是 Map 的实现类 
Map获得key->set<String> sett=map.getKey()获得value->map.get(sett)
HashTable 是线程安全的,不能存储 null 值
HashMap 不是线程安全的,可以存储 null 值

java判空
当返回值是object时,用==null判空
当返回值是string时 或者string类型变量,需要用String类中equals方法,例request.getParameter("id").toString().equals(null)
注意"",若java里引用指针,null代表没有指针映射它,""代表有指针映射它,内容为空。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值