不想干正事时的好去处
I/O
-
java java按行写入文件 java读取文件第一行 - 如何使用Java逐行读取大型文本文件?
其中一个回答记录并测试了10种不同的方式来读取Java文件 ,可参考
-
【官方示例】File IO(NIO.2):(不同场景下)读、写并创建文件
官方文档 出品,必属精品。介绍了不同场景下应该使用何种 API
-
java inputstream读取字符串 inputstream转为string - 如何在Java中将字符串转换为InputStream?
-
Java InputStream 的内容写入 OutputStream
Spring 框架提供不关闭流的 StreamUtils.copy(in, out) 和复制后关闭流的 FileCopyUtils.copy(in, out)
集合
-
for(Iterator<String> i = names.iterator(); i.hasNext();) { String name = i.next(); // must be called before you can call i.remove() //Do Something i.remove(); }
Tips:另外一种删除重复项的方法是将列表转储到 LinkedHashSet(如果需要,然后返回到列表中)。 这可以在删除重复项时保留插入顺序。
-
在文中对于迭代 List<Integer> 集合,List.stream().forEach() 最具效率。
-
Integer.valueOf 和 Integer.parseInt 区别
查看源码即可。都可接收 String 类型的入参,ValueOf 返回包装类型,parseInt 返回基本类型
-
在Java中如何将List <Integer>转换为int[]?
public int[] toIntArray(List<Integer> intList){ return intList.stream().mapToInt(Integer::intValue).toArray(); }
- 如何从ArrayList中删除重复的元素?
Set<Entity> s = new LinkedHashSet<Entity>(entities); // List<Entity> entities entities.clear(); entities.addAll(s);
-
// Bill and Bob and Steve String.join(" and ", Arrays.asList("Bill", "Bob", "Steve"));
-
String commaSeparated = "item1 , item2 , item3"; ArrayList<String> items = new ArrayList<String>(Arrays.asList(commaSeparated.split(",")));
-
int res = "abd$asda$asad$sas".chars().reduce(0, (a, c) -> a + (c == '$' ? 1 : 0)); System.out.println(res);
-
flatmap将多个Stream连接成一个Stream,换言之它可以接收类似于list<list
>之类的集合,每个元素都可以迭代。之后对每一个元素进行迭代,每一次迭代进行一次方法 -
为什么在尝试从列表中删除元素时会遇到UnsupportedOperationException?
Arrays.asList()返回的列表是不可变的。
使用 List<String> list = new ArrayList(Arrays.asList(split))
-
① 使用 String.format 方法 ② Apache StringUtils 有几种方法可使用:leftPad,rightPad,center 和 repeat
-
new StringBuilder(hi).reverse().toString()
-
使用 Date.before(),Date.after() 和 Date.equals()
if(todayDate.after(historyDate) && todayDate.before(futureDate)){...}
-
建议并使用 LinkedHashMap 或其他有序集合(它会按照插入顺序迭代元素), 此链接可以帮助您找到最适合使用的集合。如果想找其他保留插入顺序的集合,可以看看 这个讨论帖