我有一个TextView和一些文本.我需要创建一个持续30秒的动画,它会慢慢地将文本颜色从绿色变为红色.有任何想法吗?
我有一个HashMap<Integer, Integer>.我将其内容写入文件,因此它的每一行都包含hashmapKey:::hashmapValue.这是我现在这样做的方式:
List<String> mLines = new ArrayList<String>();
mHashMap.forEach((key, value) -> mLines.add(key + DATA_SEPARATOR + value));
Files.write(mOutputPath, mLines, StandardCharsets.UTF_8);
Run Code Online (Sandbox Code Playgroud)
我非常怀疑我需要将整个复制HashMap到字符串列表中,我相信在处理大量数据时它会给我带来性能问题.我的问题是:如何HashMap使用Java 8 将内容写入文件,避免在另一个列表中复制值?
`
l1 = new Path();
l2 = new Path();
l3 = new Path();
l4 = new Path();`
---
`mPathList.add(l1...l4);`
---
`public void onDraw(Canvas canvas) {
...
for (Path path : mPathList) {
canvas.drawPath(path, mOverlayPaint);
}
...
}`
---
`case MotionEvent.ACTION_MOVE:
int X = (int)me.getRawX();
int Y = (int)me.getRawY();
l1.moveTo(X, Y);
l2.moveTo(X + 5, Y);
l3.moveTo(X + 10, Y);
l4.moveTo(X + 15, Y);
break;`
Run Code Online (Sandbox Code Playgroud)
但是当我想要画一些东西时,FPS会慢慢减少.任何想法如何让它工作正常?PS对不起我的英文,拜托
我怎么能转换ArrayList<String>成String[]?我试图使用这段代码:
ArrayList<String> al = getResources()...; //getting string-array from values.xml
String[] data = new String[al.size()];
for (int i = 0; i != al.size(); i++) {
data[i] = al.get(i);
}
Run Code Online (Sandbox Code Playgroud)
但它很慢.我怎么能更快地做到这一点?
我有一个String,其中包含一些文件的路径,例如." /sdcard0/Lewis/cache.obb".
如何从该String获取文件扩展名(w/out dot)?
注意:文件扩展名可以不同,例如." .tar.gz".
android ×3
java ×3
string ×2
animation ×1
arraylist ×1
canvas ×1
colors ×1
file ×1
hashmap ×1
java-8 ×1
java-stream ×1
nio ×1
performance ×1
textview ×1
touch-event ×1