Java笔试输入输出及常用API总结
Java笔试输入
import java.util.*;
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in)
//判断是否有下一个输入
sc.hasNext();
sc.hasNextInt();
sc.hasNextDouble();
sc.hasNextLine();
//读一个整数
int n =sc.nextInt();
//读一个字符串
String s=sc.next();//会以空格或回车作为结束标识符
//读一个浮点数
double t =sc.nextDouble();
//读一整行
String s=sc.nextLine();//一行字符串
String s=sc.nextLine().toString()//一行未知个数的数字,得到后再转换为数组
//注:next读到空格处就不读了,nextLine()一读读一行
}
}
Java笔试输出
System.out.print();//不换行
System.out.printf(String.format("输出数据为:%8.2f", num1));//换行
常用API
String
indexOf():返回指定字符的索引。
charAt():返回指定索引处的字符。
replace():字符串替换。
trim():去除字符串两端空白。
split():分割字符串,返回一个分割后的字符串数组。
getBytes():返回字符串的 byte 类型数组。
length():返回字符串长度。
toLowerCase():将字符串转成小写字母。
toUpperCase():将字符串转成大写字符。
substring():截取字符串。
equals():字符串比较。
StringBuffer
StringBuffer sb = new StringBuffer()
sb.capacity() //当前容量
sb.length()//此时存储字符串长度
sb.append(object)
sb.insert(index,object)//索引从零开始
sb.deleteCharAt(index)
sb.delete(start,end)//左闭右开
sb.repalce(start,end,object)//左闭右开,替换
sb.setCharAt(index,char)
sb.reverse()//反转
sb.substring(start,end)//左闭右开
sb.toString()
Deque
Deque<> dq = new LinkdeList<>()
size()
isEmpty()
peek()
queue:
插入元素
addFirst(): 向队头插入元素,如果元素为空,则发生NPE
addLast(): 向队尾插入元素,如果为空,则发生NPE
offerFirst(): 向队头插入元素,如果插入成功返回true,否则返回false
offerLast(): 向队尾插入元素,如果插入成功返回true,否则返回false
移除元素
removeFirst(): 返回并移除队头元素,如果该元素是null,则发生NoSuchElementException
removeLast(): 返回并移除队尾元素,如果该元素是null,则发生NoSuchElementException
pollFirst(): 返回并移除队头元素,如果队列无元素,则返回null
pollLast(): 返回并移除队尾元素,如果队列无元素,则返回null
获取元素
getFirst(): 获取队头元素但不移除,如果队列无元素,则发生NoSuchElementException
getLast(): 获取队尾元素但不移除,如果队列无元素,则发生NoSuchElementException
peekFirst(): 获取队头元素但不移除,如果队列无元素,则返回null
peekLast(): 获取队尾元素但不移除,如果队列无元素,则返回null
stack:
pop(): 弹出栈中元素,也就是返回并移除队头元素,等价于removeFirst(),如果队列无元素,则发生NoSuchElementException
push(): 向栈中压入元素,也就是向队头增加元素,等价于addFirst(),如果元素为null,则发生NPE,如果栈空间受到限制,则发生IllegalStateException
Map
Map< , > map = new HashMap<>()
map.containsKey(Object key)
map.containsValue(Object value)
entrySet()遍历此HashMap中的所有元素
get(Object key)根据key返回对应的value
getOrDefault(Object key, V defaultValue)根据key返回对应的value,如果对应value为null,返回defaultValue
isEmpty()如果此地图不包含键值映射,则返回 true 。
put(K key, V value)增加元素。
remove(Object key)根据key移除元素。
size()返回此HashMap中元素的数量
遍历:
for(Map.Entry<Integer, Integer> entry : map.entrySet()){
System.out.println("key = " + entry.getKey() + ", value = " + entry.getValue())
}
//iterating over keys only
for (Integer key : map.keySet()) {
System.out.println("Key = " + key);
}
//iterating over values only
for (Integer value : map.values()) {
System.out.println("Value = " + value);
}
Character
Character.isDigit(char c) //判断字符c是否是数字字符,如‘1’,‘2’,是则返回true,否则返回false
Character.isLetter(char c) //判断字符c是否是字母
Character.isLowerCase(char c) //判断c是否是小写字母字符
Character.isUpperCase(char c) //判断c是否是大写字母字符
Character.isLetterOrDigit(char c) //判断c是否是字母或数字字符
List
/List接口的子类:
① ArrayList集合
② LinkedList集合
List接口:
① add(Object e):向集合末尾处,添加指定的元素!
② add(int index, Object e):向集合指定索引处,添加指定的元素,原有元素依次后移!
③ remove(Object e):将指定元素对象,从集合中删除,返回值为被删除的元素!
④ remove(int index):将指定索引处的元素,从集合中删除,返回值为被删除的元素!
⑤ set(int index, Object e):将指定索引处的元素,替换成指定的元素,返回值为替换前的元素(Set前提必须有这个下标)!
⑥ get(int index):获取指定索引处的元素,并返回该元素!
Set
Set set = new HahsSet();
boolean add(E o)如果 set 中尚未存在指定的元素,则添加此元素(可选操作)。
boolean addAll(Collection<? extends E> c)如果 set 中没有指定 collection 中的所有元素,则将其添加到此 set 中(可选操作)。
void clear()移除 set 中的所有元素(可选操作)。
boolean contains(Object o)如果 set 包含指定的元素,则返回 true。
boolean containsAll(Collection<?> c)如果此 set 包含指定 collection 的所有元素,则返回 true。
boolean equals(Object o)比较指定对象与此 set 的相等性。
int hashCode()返回 set 的哈希代码值。
boolean isEmpty()如果 set 不包含元素,则返回 true。
Iterator iterator()返回在此 set 中的元素上进行迭代的迭代器。
boolean remove(Object o)如果 set 中存在指定的元素,则将其移除(可选操作)。
boolean removeAll(Collection<?> c)移除 set 中那些包含在指定 collection 中的元素(可选操作)。
boolean retainAll(Collection<?> c)仅保留 set 中那些包含在指定 collection 中的元素(可选操作)。
int size()返回 set 中的元素数(其容量)。
Object[] toArray()返回一个包含 set 中所有元素的数组。
T[] toArray(T[] a)返回一个包含 set 中所有元素的数组;返回数组的运行时类型是指定数组的类型。
欢迎大家阅读,有问题和不足的地方欢迎大家指出。作者:永和九年,转载请注明原文链接:https://www.cnblogs.com/hardyzhou/p/17406954.html

浙公网安备 33010602011771号