echo 批处理命令 读取错误(控制台从输出语句)
%errorlevel% 返回数值
12.Object类
toString():打印当前对象说明性的信息
equals(),默认比较的是对象的地址值是否相等,重写后比较的是内容是否相等。
13.Array类
toString(),将数组转换成字符串
sort()排序
1. 包装类(封装数据类型)(提供一系列相关的方法)
byte Byte
short Short
int Integer
long Long
boolean Boolean
char Charater
float Float
double Double
2. 如何通过Integer对象描述一个int值
a. new Integer(2);
b. new Integer("2");
c. Integer.valueof(2);
d. Integer.valueof("2");
3. int 与String互换
a. int to String
i. int i = 5,String s= i + "";
ii. String s = String.valueof(i);
b. String to int
i. String to Integer to int
1) String s ="123"; Integer i=Integer.valueof(s);int I = i.intValue()
ii. String to int
1) String s ="123"; int I = Integer.parseInt("s");
4. 自动装箱和拆箱(jdk1.5之后提供的特性)
a. 自动装箱
i. int i=100;Integer ii = i;基本数据类型to封装数据类型
b. 自动拆箱
i. Integer I = Integer.valueof(ii),int b=I;将封装类型转换成基本数据类型。
5. Date类实例化(构造方法) java.util
a. new Date() 获取当前系统时间
b. new Date(long time) 获取基于1970-1-1 0:0:0后加上time的时间
c. Date d1 = new Date(); d1.tolocaleString() //转换成中文时间。
6. Date类常用方法
1. getTime();
2. setTime(long time);
7. SimpleDateFormat格式化日期 java.text包中
1. yyyy年 MM月 dd日 HH时 mm分 ss秒
2. format()格式化
3. parse() 解析
8. Calendar 类用法 Java.util
1. 如何获取Calendar对象
i. Calendar.getInstance();//获取当前系统时间
ii. get();获取日历字段对应的值。
1) 获取月份的时候注意+1
a) 即int day = c.get(Calendar.Month)+1
iii. add():根据日历字段运算。
iv. set();设置当前日历的年月日
9. 异常
1. 概念:程序中的错误
2. Throwable 所以异常消息的顶级父类
i. Error:不可处理的异常
ii. Exception:可处理异常
1) 编译期异常
2) RuntimeException运行时异常。
3. 异常处理的两种方式
i. try{ }catch(){}
try 异常的监视块,catch 异常的捕获块
ii. throws
10. Throwable的成员方法
1. getMessage();异常原因
2. toString();简短异常消息
3. printStackTrace();详细异常消息
11. 运行时异常和编译时异常
1. 编译时异常:需要在程序编译时进行异常处理
2. 运行时异常:无需在程序编译时进行处理
12. 异常举例
1. 数学异常 ArithmeticException除数不能为零
2. 空指针异常 NullPointerException
3. 字符串索引越界StringIndexOutOfBoundException
4. 数字格式化异常 NumberFormatException
5. 类型转换异常 ClassCastException
13. 多重catch块
1. try{}catch(){}catch(){}
2. 如果后面带有finally{}字符的获取异常语块,最后都会执行finally里面的语块。
14. throws
1. 回避异常
1. 集合概念及体系结构
a. 概念:可变长度的数据容器。
b. 体系结构:Collection
1) 单列集合:
a) List:可重复
i) ArrayList
ii) LinkedList
b) Set:不可重复
i) HashSet
ii) LinkedHashSet
iii) TreeSet
2) 双列集合:Map
a) Map
i) HashMap
2. Collection的概述和基本使用
概念:单列集合的顶级接口;
通过多态的方式创建对象;Collection <String> c =new ArrayList<>();
添加数据 :add();
3. Collection集合的常用方法
a. 删除:remove()
b. 清除:clear()
c. 是否存在某个元素:contains()
d. 集合是否为空:isEmpty()
e. 集合的长度:size()
4. Collection集合遍历
a. 通过迭代器对象进行 遍历
b. 步骤
i. 获取迭代器:集合.iterator();
ii. 判断迭代器是否可以读取元素:迭代器.hashNext()
iii. 读取元素:迭代器.next();
5. List集合特点
a. 有序,可通过索引进行访问
b. 存储数据可重复
6. List集合特有方法
a. add(index,"");插入,在指定位置插入一个元素,此位置之前的元素向后移。
b. set(index,“”)替换,将指定位置的值替换成期望值。
c. remove(index)删除
d. get(index)读取元素
7. 集合并发问题及Listiterator用法
a. 异常:当通过迭代器对象迭代集合对象时,向集合对象添加数据会导致异常出现
i. 解决
1) 通过for循环
2) listiterator()进行解决
a) hasPrevious()判断是否有上一个元素
b) previous()取出上一个一元素
c) add()向集合中添加元素
d) remove();向集合中删除元素
8. 增强for循环jdk1.5
a. for(变量的类型 变量名:数组或集合){ }
9. 数据结构
a. 栈与队列
i. 栈Stack 入栈and出栈 Java.util 先入后出
1) Stack stack = new Stack();
a) stack.push(123);入栈
b) stack.pop();出栈
ii. 队列Queue java.util 先入先出
1) Queue queue = new LinkedList();
2) queue.add(123);入队
3) queue.poll();出队
10. 数组和链表
a. 数组 查找快,增删慢
b. 链表 查找慢,增删快
11. LinkedList特有方法
a. addfirst();
b. addLast();
c. getFirst();返回元素
d. getLast();返回元素
e. removeFirst();返回元素
f. removeLast();返回元素
1. Set集合概述和特点
不重复
无索引
无序;HashSet对集合的迭代顺序不做任何保证。
2. Hash值的概念
a. 什么时哈希值?
i. 根据对象的地址或字符串或数字算出来的值,类型为int;
b. 如何获取哈希值?
i. 对象Object类内有hashCode()方法返回对象的哈希值。
ii. public int hashCode();
iii. 通过方法重写,可以实现不同对象的哈希值是相同的。
c. 1.概念:是一个整型值,默认来自 Object类中的hashCode方法。
2. 规律:不同的hashCode一定来自不同的对象,相同的hashCode可能来自不同的对象,也可能来自同一个对象。
3.作用:在比较两个对象是否相等时,可以提高执行效率。
3. HashSet集合的特点
a. 无序、没有索引
b. 不包含重复元素
c. 底层采用哈希表(数组+链表)
4. LinkedHashSet集合的特点
a. 有序,无重复
5. TreeSet集合的特点
a. 排序,默认情况下对数据进行自然排序。
b. 不包含重复的元素
c. 排序自定义对象
i. 第一种方式
1) 要求自定义对象所属的类要实现一个接口(java.lang.Comparable)里面的方法,
2) 重写方法 compareTo(Student s);>0当前添加的元素大,==0等 <0小
ii. 第二种方式
1) 构造方法中传入实现某个接口的对象(java.util.Comparator<T>)。
2) 重写方法 int compare(Student s1 ,Student s2)
6. 泛型的概念个好处
a. 参数化类型
i. 优点:
1) 提供了编译器检查功能
2) 减少了强制类型转换。
7. 泛型类、接口、方法
8. 可变参数
a. 概念:方法的参数的个数可变
b. 语法:方法名(int…i);i的本质是一个数组
c. 注意事项
i. 一个方法只能有一个可变参数
ii. 如果有多个参数,可变参数必须放在后面。
1. Map集合的概述和特点
a. 键值对的方式存储数据
一个键对应一个值
键是不允许重复的,值可以重复
无序
2. map集合中常用的方法
a. 添加数据:put(key,value);
b. 删除数据:remove(key);
c. 清空数据:clear();
d. 判断某个键是否存在:containsKey(key);
e. 判断某个值是否存在:containsValue(value);
f. 判断是否为空:isEmpty();
g. 长度:size();
3. map集合读取数据方式
a. 根据键值key获取相应的值:get(key);
b. 获取所有键的集合:keySet----->Set集合
c. 获取所有值的集合:value------>Collection集合
d. 获取所有键值对 对象的集合 entrySet()-->Set; Map.entry
4. Collections常用方法(是一个工具类)
a. 排序:sort();
b. 翻转:reverse();
c. 将集合中的数据随机排列:shuffle();