Minecraft新社交方式 – Essential
Essential is a quality of life mod that boosts Minecraft Java to the next level. 最近发现一个特别火爆的社交mod,稍微了解了一下,确实很不错,让人感觉眼前一亮…
尝试一下用Selenium爬取数据
Android开发 读写外部储存
Java多线程 等待所有子线程执行完毕
听说Python很适合写爬虫,于是我就花了两个晚上稍微学了学Python,现在差不多入门了,就先写个简单的爬虫试试,爬一下B站的热榜。 这里用到了selenium和xlwt两个库,主要是用于模拟浏览器和写入电子表。 因为传统获取网页源代码的…
今天在写Android的时候突然发现APP不能向自身的Android/data或内部文件夹写入文件。 按理来说,在申请了读写储存空间权限的情况下我们也只能读写本应用的文件夹,但我在复制文件的时候出现了一些小问题。 我试着复制文件到Andro…
有时候在开发中,可能会遇到需要启动多个子线程的情况,并且这时候我们需要等待所有子线程执行完毕才能继续向下。 Thread配合CountDownLatch使用,可以轻松达到上述效果。 CountDownLatch像是一个倒计时器,你可以为它设…
MineSpace从创建至今已有1年4个月了,但是我在今年3月就抛弃了旧版开始着手制作新版。 而我决定要重制的原因是旧版代码太难维护,再加上后来引入的Google Jetpack导致设计模式不统一、配置文件参差不齐等各种问题,于是便有了这个…
Android开发的小伙伴们应该对Room再熟悉不过了吧,虽然好用,但是初学肯定会遇到各种各样的问题,这次来简单记录一下Room数据库添加数据表的版本升级。 Room$databaseBuilder下提供了addMigrations方法以供…
一般情况下通常会想到用TextWatcher来监听Edittext的数据变化,但是在recyclerViewAdapter更新的时候会重复触发这个监听事件,造成数据混乱。 尝试了百度上各种方法之后,都没有成功orz...... 于是想到了一…
Material 3很久之前就发布了,最近才了解到,感觉和Material 2完全不同,新建个项目来感受一下: 这个版本最大的特点就是圆角,几乎所有组件都有圆角,看上去非常圆润。(主题色还会随系统壁纸颜色而改变) 使用Material 3主…
前两课我们学习了数组与集合,现在我们来看看如何将它们逐个获取出来吧! 学习目标 掌握数组、集合、Map的遍历方法 数组 还记得for怎么用吗? 我们要遍历一个数组的所有元素,需要循环的次数就是数组的长度,因此我们可以得到如下表达: publ…
上一课学习了数组,那么这一节来学习一下集合和Map。 由一个或多个确定的元素所构成的整体被称为集合,集合具有无序性,但是Java内的集合多种多样,下面我们一起来学习Java中常用的集合。 学习目标 掌握ArrayList、HashSet的使…