在刷题过程中的一些常用API调用,记录下来,方便复习。
〇:输入、输出
远程在线面试的手撕代码环节,通常需要白板上写代码。
如果需要在控制台输入、输出,需要借助Scanner类。
示例如下:
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
//方法1:一般用来接收数组。以空格分界
while(scanner.hasNext()){
int num = scanner.nextInt();
/*或者*/String next = scanner.next();
}
//方法2:一般用来接受字符串。以换行符分界
while (scanner.hasNextLine()) {
String str = scanner.nextLine();
}
}
一:Integer 类
1.String -> int:int value = Integer.parseInt(str);
2.将str转换成二进制的int: int binary = Integer.parseInt(str,2);
3.十进制转二进制:String binaryN=Integer.toBinaryString(N);
二:String 类
1.Object -> String:String str = String.valueOf(o);
char[ ] -> String:String str = String.valueOf(charArray);
int -> String:String str = String.valueOf(N);
三:对StringObject的方法
1.长度:int len = str.length();
2.字符串比较:str1.compareTo(str2)
:返回int
- 大于0,str1 > str2
- 等于0,str1 = str2
- 小于0,str1 < str2
3.字符串替换:String newStr = str.replaceAll("a",".");
4.字符串分割:String newStr = str.split(" "); //根据括号里的分割
5.String -> char[ ]:char[] charStr = str.toCharArray();
String -> char:char charS = str.charAt(index);
6.字符串变小写:String lowerStr = str.toLowerCase();
字符串变大写:String upperStr = str.toUpperCase();
7.字符串截取:str.substring(start,end); //包含start,不包含end
四:对MapObject的方法
1.map中是否包含key:boolean isContain = map.containsKey(key);
2.map的get():Object value = map.get(key);
map的getOrDefault(): map.getOrDefault(key,default);//没找到就return default
3.map的put():map.put(key,value);
4.map的遍历:for(Object key : map.keySet()){ //... }
五:求长度的总结
1.数组:用arr.length
length 是数组的一个属性。
2.字符串:用str.length()
length() 是 StringObject 的一个方法。
3.集合:用list.size()
size()是list的一个方法。
六:边界处理
1.数组判空:if(arr == null|| arr.length == 0) ...
二维数组判空:if(arr == null || arr.length == 0 || arr[0].length == 0) ...
2.字符串判空:if(str == null || str.equals("")) ...