<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Alopecian的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Alopecian</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Alopecian]]></copyright><item><title><![CDATA[37、泛型机制]]></title><link>https://blog.youkuaiyun.com/Alopecian/article/details/116139186</link><guid>https://blog.youkuaiyun.com/Alopecian/article/details/116139186</guid><author>Alopecian</author><pubDate>Mon, 26 Apr 2021 15:52:40 +0800</pubDate><description><![CDATA[import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

/*
JDK5.0之后推出的新特性：泛型

下面代码的意思：（不适用泛型）
建一个ArrayList集合
存储两个对象
遍历对象的方法
 */
public class GenericTest {
    public static void main(String[] args) {

        //不适用泛型，分析程序的缺点
       .]]></description><category></category></item><item><title><![CDATA[36、链表优点和缺点以及Vector集合]]></title><link>https://blog.youkuaiyun.com/Alopecian/article/details/115979255</link><guid>https://blog.youkuaiyun.com/Alopecian/article/details/115979255</guid><author>Alopecian</author><pubDate>Wed, 21 Apr 2021 21:21:27 +0800</pubDate><description><![CDATA[package com.bjpwernode.javase.LinkedList;
/*
链表的优点
    由于链表上的元素在空间上内存地址不连续
    所以随机增删元素的时候不会有大量元素需要移动位置，因此索引效率较高
    在以后的开发中，如果遇到随机增删集合元素业务比较多的时候，建议使用LinkedList
    
链表缺点：
    不能通过数学表达式计算备查找元素的内存地址，每一次都要从头节点开始遍历，知道找到为止。
    所以LinkedList索引的效率低
 */
import ja]]></description><category></category></item><item><title><![CDATA[35、ArrayList扩容]]></title><link>https://blog.youkuaiyun.com/Alopecian/article/details/115978670</link><guid>https://blog.youkuaiyun.com/Alopecian/article/details/115978670</guid><author>Alopecian</author><pubDate>Wed, 21 Apr 2021 20:57:03 +0800</pubDate><description><![CDATA[import java.util.ArrayList;
import java.util.List;

/*
ArrayList集合：
        1、底层先创建一个长度为0的数组，当添加第一个元素的时候，初始化容量是10
        2、默认初始化的容量是10
        3、集合底层是一个Object[]数组
        4、构造方法
            new ArrayList();        new ArrayList(20);
        5、ArrayList集合的]]></description><category></category></item><item><title><![CDATA[34、List特有方法]]></title><link>https://blog.youkuaiyun.com/Alopecian/article/details/115977991</link><guid>https://blog.youkuaiyun.com/Alopecian/article/details/115977991</guid><author>Alopecian</author><pubDate>Wed, 21 Apr 2021 20:40:27 +0800</pubDate><description><![CDATA[import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

/*
List接口常用方法
    1、List集合存储元素的特点：有序可重复
    有序：List集合中的元素有下标
    2、List是Collection接口的子接口
    3、List特有的常见方法：
        void add(int index,Object element)      
        Object get(i]]></description><category></category></item><item><title><![CDATA[33、集合的迭代]]></title><link>https://blog.youkuaiyun.com/Alopecian/article/details/115896342</link><guid>https://blog.youkuaiyun.com/Alopecian/article/details/115896342</guid><author>Alopecian</author><pubDate>Tue, 20 Apr 2021 11:27:55 +0800</pubDate><description><![CDATA[import java.util.Collection;
import java.util.HashSet;
import java.util.Iterator;

/*
有关集合的遍历/迭代

 */
public class CollectionTest02 {
    public static void main(String[] args) {
        //注意：以下讲解的遍历方法/迭代，是所有Collection通用的一种方式。
        //在Map集合中不能用，在所有的Coll]]></description><category></category></item><item><title><![CDATA[32、Collection接口中的常用方法]]></title><link>https://blog.youkuaiyun.com/Alopecian/article/details/115866997</link><guid>https://blog.youkuaiyun.com/Alopecian/article/details/115866997</guid><author>Alopecian</author><pubDate>Tue, 20 Apr 2021 10:39:19 +0800</pubDate><description><![CDATA[1、Collection中存放Object的子类型。（集合只能存储java对象的内存地址）
import java.util.ArrayList;
import java.util.Collection;

/*
Collection有关的方法

    boolean add(Object e );向集合中添加元素
    int size();             获取结合中元素的个数
    void clear();           清空集合
    boolean contain(Obje]]></description><category></category></item><item><title><![CDATA[31、集合相关概念]]></title><link>https://blog.youkuaiyun.com/Alopecian/article/details/115864668</link><guid>https://blog.youkuaiyun.com/Alopecian/article/details/115864668</guid><author>Alopecian</author><pubDate>Mon, 19 Apr 2021 15:40:37 +0800</pubDate><description><![CDATA[相关概念
1、集合实际上是一个容器，可以用来存储其他类型的数据
2、集合为什么使用较多？
集合是一个容器，是一个载体，可以一次容纳多个对象。
3、集合不能直接存储基本数据类型，集合也不能直接存储对象。
集合里面存储的都是java对象的内存地址
注意：
集合在java中本身是一个容器，是一个对象
集合在任何时候存储的都是“引用”
4、在java中每一个不同的集合，底层会对应不同的数据结构，往不同的集合中存储元素，等于将数据存储到不同的数据结构中。
5、new ArrayList;创建一个集合，底层是数组
ne]]></description><category></category></item><item><title><![CDATA[30、定义异常类]]></title><link>https://blog.youkuaiyun.com/Alopecian/article/details/115584839</link><guid>https://blog.youkuaiyun.com/Alopecian/article/details/115584839</guid><author>Alopecian</author><pubDate>Mon, 19 Apr 2021 14:44:07 +0800</pubDate><description><![CDATA[package com.bjpwernode.javase.exception;
/*
1、SUN提供的JDK内置的异常肯定是不够用的。在实际的开发中，有很多业务，
这些业务出现异常之后，JDK中是没有的。和业务挂钩的。我们可以自己定义异常类
2、java中怎么自定义异常？
    两步：
        第一步：编写一个类继承Exception或者RuntimeException
        第二步：提供两个构造方法，一个是无参数的，一个带有String参数。
 */
public class MyE]]></description><category></category></item><item><title><![CDATA[29、finally子句的使用]]></title><link>https://blog.youkuaiyun.com/Alopecian/article/details/115583050</link><guid>https://blog.youkuaiyun.com/Alopecian/article/details/115583050</guid><author>Alopecian</author><pubDate>Sat, 10 Apr 2021 21:25:01 +0800</pubDate><description><![CDATA[import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;

/*
关于try...catch中的finally子句：
    1、在finally子句中的代码是最后执行的，并且是一定会执行的，即使
    try语句块中的代码出现了异常。
    2、finally语句通常使用在哪些情况？
    通常在finally语句块中完成资源的释放/关闭
    因为finall]]></description><category></category></item><item><title><![CDATA[28、异常]]></title><link>https://blog.youkuaiyun.com/Alopecian/article/details/115531348</link><guid>https://blog.youkuaiyun.com/Alopecian/article/details/115531348</guid><author>Alopecian</author><pubDate>Sat, 10 Apr 2021 19:44:51 +0800</pubDate><description><![CDATA[概念
1、什么是异常？java提供异常机制有什么用？
程序执行过程中发生了不正常的情况，而这种不正常的情况叫做：异常
java语言是很完善的语言，提供了异常的处理方式，java把异常打印输出到控制台，供程序员参考、修改，让程序更加健壮。
2、以上程序执行控制台出现的异常信息是JVM打印出来的。
异常的存在形式
/*
java程序中异常以什么形式存在的呢？
    1、异常在java中以类的形式存在，每一个异常类都可以创建异常对象
    2、异常类是模板
        对象是模板
        对象是实]]></description><category></category></item><item><title><![CDATA[27、枚举]]></title><link>https://blog.youkuaiyun.com/Alopecian/article/details/115530043</link><guid>https://blog.youkuaiyun.com/Alopecian/article/details/115530043</guid><author>Alopecian</author><pubDate>Thu, 08 Apr 2021 20:51:24 +0800</pubDate><description><![CDATA[//返回值类型使用boolean没问题，但是如果开发中可能遇到一个方法执行结果可能包括三种情况以上，该怎么办？
//需要使用java语言中的枚举类型
public class EnumTest01 {
    public static void main(String[] args) {
        //System.out.println(10 / 0);// java.lang.ArithmeticException: /by zero

        boolean retValue = di]]></description><category></category></item><item><title><![CDATA[26、数字格式化、BigDecimal、随机数]]></title><link>https://blog.youkuaiyun.com/Alopecian/article/details/115522141</link><guid>https://blog.youkuaiyun.com/Alopecian/article/details/115522141</guid><author>Alopecian</author><pubDate>Thu, 08 Apr 2021 17:01:03 +0800</pubDate><description><![CDATA[数字格式化
import java.text.DecimalFormat;

/*
关于数字的格式化（了解）
 */
public class DateTest04 {
    public static void main(String[] args) {
        //java.text.DecimalFormat专门负责数字格式化的。
        //DecimalFormat df = DecimalFormat("数字格式");

        /*
        数字格式有哪些？
]]></description><category></category></item><item><title><![CDATA[25、java对于日期的处理]]></title><link>https://blog.youkuaiyun.com/Alopecian/article/details/115520168</link><guid>https://blog.youkuaiyun.com/Alopecian/article/details/115520168</guid><author>Alopecian</author><pubDate>Thu, 08 Apr 2021 14:52:39 +0800</pubDate><description><![CDATA[import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

/*
java中对于日期的处理
        需要掌握：1、怎么获取当前时间（精确到毫秒的系统当前时间）
                 2、String ---&gt;Date
                 3、Date ---&gt;String   

 */
public class DateTest01 {
]]></description><category></category></item><item><title><![CDATA[24、String、int、Integer类型转换]]></title><link>https://blog.youkuaiyun.com/Alopecian/article/details/115506025</link><guid>https://blog.youkuaiyun.com/Alopecian/article/details/115506025</guid><author>Alopecian</author><pubDate>Thu, 08 Apr 2021 10:13:25 +0800</pubDate><description><![CDATA[public class IntegerTest05 {
    public static void main(String[] args) {
        //String--&gt;int
        String s = "123";
        int retValue = new Integer(s);
        System.out.println(retValue);
        int retValue2 = Integer.parseInt("123");
   .]]></description><category></category></item><item><title><![CDATA[23、数组格式化异常和Integer常用方法]]></title><link>https://blog.youkuaiyun.com/Alopecian/article/details/115418611</link><guid>https://blog.youkuaiyun.com/Alopecian/article/details/115418611</guid><author>Alopecian</author><pubDate>Thu, 08 Apr 2021 09:49:27 +0800</pubDate><description><![CDATA[/*
总结一下之前学到的经典异常？
    空指针异常：NullPointerException
    类型转换异常：ClassCastException
    数组下标越界异常：IndexOutOfBoundsException
    数字格式化异常：NumberFormatException
 */
public class IntegerTest04 {
    public static void main(String[] args) {
       Integer a = new Int]]></description><category></category></item><item><title><![CDATA[22、自动装箱和自动拆箱]]></title><link>https://blog.youkuaiyun.com/Alopecian/article/details/115417551</link><guid>https://blog.youkuaiyun.com/Alopecian/article/details/115417551</guid><author>Alopecian</author><pubDate>Sat, 03 Apr 2021 17:39:17 +0800</pubDate><description><![CDATA[概念
public class IntegerTest04 {
    public static void main(String[] args) {
    //java5之后，引入一种新特性，自动装箱和自动拆箱
    //自动装箱：基本数据类型自动转换为包类型
    //自动拆箱：包类型自动转换为基本数据类型

        //900是基本数据类型
        //x是包装类型
        //基本数据类型-（自动转换）-&gt;包装类型：自动装箱
        Integer x ]]></description><category></category></item><item><title><![CDATA[21、Integer方法的构造方法以及通过常量获取最大值最小值]]></title><link>https://blog.youkuaiyun.com/Alopecian/article/details/115412378</link><guid>https://blog.youkuaiyun.com/Alopecian/article/details/115412378</guid><author>Alopecian</author><pubDate>Sat, 03 Apr 2021 09:08:43 +0800</pubDate><description><![CDATA[Integer的构造方法
/*
关于Integer类的两种构造方法，有两个：
        Integer（int）
        Integer（String）
 */
public class IntegerTest03 {
    public static void main(String[] args) {
        //java9之后不建议使用这个构造方法了，出现横线表示已经过时
        //将数字100转换为Integer包装类型（int ---&gt; Integer）
 ]]></description><category></category></item><item><title><![CDATA[20、包装类以及装箱和拆箱]]></title><link>https://blog.youkuaiyun.com/Alopecian/article/details/115407338</link><guid>https://blog.youkuaiyun.com/Alopecian/article/details/115407338</guid><author>Alopecian</author><pubDate>Sat, 03 Apr 2021 08:28:03 +0800</pubDate><description><![CDATA[为什么要对基本数据类型进行包装？
/*
1、java中8种基本数据类型有对应准备了8种包类型。8中包类型属于引用数据类型，父类是Object
2、为什么要提供8种包类型呢？
        有的方法传参需要不同类型，我们需要进行基本数据的转换
        因为8种基本数据类型不够用
        所以sun公司又提供了8种包装类型。
 */

/*
我们手动建立一个类来修改基本数据类型
我们建的类叫做MyInt
 */
public class IntegerTest01 {
    public s]]></description><category></category></item><item><title><![CDATA[19、StringBulider和StringBuffer]]></title><link>https://blog.youkuaiyun.com/Alopecian/article/details/115366656</link><guid>https://blog.youkuaiyun.com/Alopecian/article/details/115366656</guid><author>Alopecian</author><pubDate>Thu, 01 Apr 2021 11:12:45 +0800</pubDate><description><![CDATA[思考：
我们在实际的开发中，如果需要进行字符串的频繁拼接，会有什么问题？
因为java中的字符串是不可变的，每一次拼接都会产生新字符串。
这样会占用大量的方法区内存，造成内存空间的浪费。
 String s = "abc";
        s += "hello";

上面的代码，就导致在方法区字符串常量池中创建了3个对象：
“abc”、“hello”、“abchello”
解决办法
1、如果以后需要进行大量的拼接操作，建议使用JDK中自带的：
java.lang.StringBuffer
java.la]]></description><category></category></item><item><title><![CDATA[18、String类的方法]]></title><link>https://blog.youkuaiyun.com/Alopecian/article/details/115303784</link><guid>https://blog.youkuaiyun.com/Alopecian/article/details/115303784</guid><author>Alopecian</author><pubDate>Thu, 01 Apr 2021 09:20:01 +0800</pubDate><description><![CDATA[public class StringTest01 {
    public static void main(String[] args) {
        //String类中常用方法
        //1（掌握）、char(返回的值的类型) charAt(int index)
        //取出字符串中第index位置的字符
        char c = "中国人".charAt(1);//“中国人”字符串是一个String对象，只要对象就能“点”
        System.out.]]></description><category></category></item></channel></rss>