《剑指offer》之常用辅助类

常用辅助类–算法


  • 在每天积累算法中常常需要用一些辅助类,这些辅助类平时都是通过IDE自动补全,在手写代码中常常忘记使用方法!这篇博客将记录自己学习算法过程中使用的辅助类的常用方法,并不断补全中。

(一).java的按值传递和按引用传递

(二).char[]:数组知识

 String str = "Hello";
 char[] c=str.toCharArray();
 String str = String.valueOf(c);

 int len = c.length;
//整数的上下溢出问题
int i = Integer.MAX_VALUE;(2^31-1)
int j = Integer.MIN_VALUE;(-2^31)

(三).String类

 String str=new String("Hello");
 StringBuffer sb = new StringBuffer("World");
 //包装类变字符串
 str = sb.toString();
 //获取字符串长度
 int len=str.length();
 //获取指定索引位置的字符 ,返回值类型char
 char i=str.charAt(3);
//字符串截取
String i= str.substring(int beginIndex);
//字符串截取
String i= str.substring(int beginIndex,int endIndex);
//去掉前尾部空格
String i=str.trim();
//判断字符是否相等 返回值布尔型
boolean i = str.equal(str1);
//以","来分割字符串
String[] strSeg = str.split(",");

(四).Stack类

//实现了一个标准的后进先出栈
Stack<Integer> st=new Stack<>();
//测试堆栈是否为空。
boolean i = st.empty();
//查看堆栈顶部的对象,但不从堆栈中移除它。
int j = st.peek();
//移除堆栈顶部的对象,并作为此函数的值返回该对象。
int k = st.pop();
//把项压入堆栈顶部。
int m = st.push(5);

(五).StringBuffer类

//StringBuffer对象和String对象之间的互转的代码如下:

String s = “abc”;

StringBuffer sb1 = new StringBuffer(“123”);

StringBuffer sb2 = new StringBuffer(s); //String转换为StringBuffer

String s1 = sb1.toString(); //StringBuffer转换为String
//追加内容到当前StringBuffer对象的末尾,类似于字符串的连接
StringBuffer sb = new StringBuffer(“abc”);
sb.append("true");
//删除指定位置的字符,然后将剩余的内容形成新的字符串.
sb. deleteCharAt(1);
//将StringBuffer对象中的内容反转,然后形成新的字符串.
sb.reverse();
//修改对象中索引值为index位置的字符为新的字符ch.
sb.setCharAt(1,’D’);

(六).HashMap类

//向集合中添加指定值与指定键映射关系。
Object put(K key, V value)


//返回指定键在此标识哈希映射中所映射的值,如果存在指定的键对象则返回与该键对应的值对象;否则返null。
Object get(Object K)

//如果映射中包含了作为键的K,则返回true。
boolean containsKey(Object K)

//如果此映射不包含键-值映射关系,也就是说映射是空的,则返回true。
boolean isEmpty()

(七).Queue接口

offer       添加一个元素并返回true       如果队列已满,则返回false

poll         移除并返问队列头部的元素    如果队列为空,则返回null

peek       返回队列头部的元素             如果队列为空,则返回null
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章