Java基础+


泛型


1.诞生的意义
2.泛型的使用语法
泛型有三种用途1)泛型接口
2)泛型类
3)泛型方法
如何让使用一个泛型类,语法+背后模型
自己去定义一个泛型类
使用和定义泛型方法

泛型为什么出现
顺序表本事是一种抽象类型数据,保存的数据不仅仅是int类型
如果没有泛型的支持,我们必须为每一种要保存的类型定义一个顺序表类.

为了解决这个问题:
第一阶段:1)Object 是所有类的基本类


1.泛型类


class ArrayList<类型变量形参>

class ArrayList
E[]array;
int size;
使用泛型类 new ArrayList();

2.类型推导
ArrayListp = new ArrayList();
3.多类型参数


2.包装类自动装箱+自动拆箱


instance of

构造方法:
ArrayList(); 构造空的顺序表,容量是默认容量
ArrayList(int capacity);构造空的顺序表,容量是capacity
ArrayList(Collection c);构造一个顺序表,把c中的所有元素放到顺序表

八大基本数据类型
1.float java.lang.Float
2.double java.lang.Double
3.int java.lang.Integer
4.short java.lang.Short
5.byte * java.lang.Byte
6.long java.lang.Long
7.char Character java.lang.Character
8.boolean java.lang.Boolean

public class Stack {
private long[] arr;
private int top;

/**
 * 默认的构造方法
 */
public Stack(){
	arr = new long[10];
	top = -1;
}
/**
 * 自定义栈的大小的构造参数
 * @param maxsize
 */
public MyStack(int maxsize) {
	arr = new long[maxsize];
	top = -1;
}

/**
 * 添加数据
 */
public void push(long value) {
	arr[++top] = value;
}

/**
 * 移除数据
 */
public long pop() {
	return arr[top--];
}
/**
 * 查看数据
 */
public long peek() {
	return arr[top];
}
/**
 * 判断是否为空
 */
public boolean isEmpty() {
	return top ==  0;
}
/**
 * 判断是否满了
 */
public boolean isFull() {
	return top == arr.length - 1;
}

}


栈的应用


1.逆波兰表达式 后缀表达式


队列


先进先出(FIFO)
Java中的队列 Quene(intFace)
队首
队尾 push\pop
rear = (rear + 1)%容量
rear = (rear - 1 + 容量) % 容量

public int pop (){
int pop = Queue.back();
queue.pop_back();
return pop;
}

循环队列

树形结构


二叉树


1.度最大为2
2.是一颗有序树
递归思想递归方法的实现
链式表示形式------->
class Node{
int value;
Node left;
Node right;
}

1)深度优先遍历
前序 中序 后续
前序

中序
public static void (Node root){
if(root = null){
return;
}
System.out.println(
medTraversal(root.left);
medTraversal(root);
medTraversal(root.right);
}
后序
public static void (Node root){
if(root = null){
return;
}
System.out.println(left.value);
finalTraversal(root.left);
finalTraversal(root.right);
}

2)广度优先遍历

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值