有思路是关键,然后再去想具体的实施细节:
arrayChar[] arrayChar
charAt()
deleteCharAt()
toArrayChar() //char[]也是小写
str.split(" "); //这个不是更牛吗?
char ch = expression.charAt(i); //注意char是小写
sb.toString()
sb.append()
sb.length()
string.substring() //前几个?
string.substring(j,i)
string.substring(start, start+maxLen)
string.equals("")
map.containsKey()
map.get()
map.put(key, value)
Queue<int[]> queue = new LinkedList<>();
queue.poll();
queue.add();
HashSet<Integer> hashSet = new HashSet<>();
hashSet.add();
int[].length
int[][] dp = new int[m+1][n+1];
list.size();
list.add();
linkedList.removeLast();
//下面这两种比较法都可以
Arrays.fill(memo, 0);
Arrays.sort(envelopes, new Comparator<int[]>()){ //构造方法 the Compare Function
@Override
public int compare(int[] a, int[] b){
return a[0]==b[0]?b[1]-a[1]:a[0]-b[0]; //b[1]-a[1]如果小于0,那b[1]就是在a[1]后面,b[1]比a[1]低,前面的比后面的低,即高是降序 //而 a[0]-b[0]如果小于0,则a[0]在b[0]后面 所以是升序
}
}
Arrays的sort
Arrays.sort(envelopes,(o1,o2) -> {if(o1[0]==o2[0]) return o2[1]-o1[1];else return o1[0]-o2[0]; }); //这个大括号无法去掉
ArrayList的sort
entryList.sort((x,y)->x.getValue().compareTo(y.getValue())); //这个大括号可以去掉;
它们的区别如下:一个使用了lambda,一个没有;

//map的两种使用方法,这会是不同的思路;
map.put(ch, i); //存index
map.put(ch, map.getOrDefault(ch,0)+1); //存这个字符出现的次数,或者:
map.put(ch, map.get(ch)+1);
下面两组代码是一个意思
if(map.containsKey(ch)) {
map.put(ch, map.getOrDefault(ch, 0)+1);
}else {
map.put(ch, 1);
}
map.put(ch, map.getOrDefault(ch, 0)+1); //这个昨天在我的编程里用到了
创建数组
int[] array = new array[]{1,2,3,4,5,6,7}; //这个地方不是() 而是{}
int[] array = {1,2,3,4,5,6,7};
Integer.valueOf(), Integer.compare(), Integer.compareTo();
1)
Scanner in = new Scanner(System.in); //这个要配合System.out.println()的配合在console里输入数字
2)
File file = new File(String filePath);
Scanner file = new Scanner(file);
file.hasNextLine();
file.nextLine();
file.close();
Files.exists():检测文件路径是否存在。
Files.createFile():创建文件。
Files.createDirectory():创建文件夹。
Files.delete():删除一个文件或目录。
Files.copy():复制文件。
Files.move():移动文件。
Files.size():查看文件个数。
Files.read():读取文件。
Files.write():写入文件。
String 类的常用方法都有那些?
indexOf():返回指定字符的索引。
charAt():返回指定索引处的字符。
replace():字符串替换。
trim():去除字符串两端空白。
split():分割字符串,返回一个分割后的字符串数组。
getBytes():返回字符串的 byte 类型数组。
length():返回字符串长度。
toLowerCase():将字符串转成小写字母。
toUpperCase():将字符串转成大写字符。
substring():截取字符串。
equals():字符串比较
matches();
substring(int beginIndex, int endIndex); //endIndex不包括,到endIndex为止
str.replace();
网友评论