Skip to content

Instantly share code, notes, and snippets.

04c09bf02d48ff700d597f83673dfbf000ff14ee5d3dec13e24b8f3da0794536eabc289a7227430e0df8d797860cbdc82a064fcf10a6914f16b1182f4faed40225
@supermanmwg
supermanmwg / Sort.java
Last active June 15, 2016 05:54
排序算法代码
package com.sort;
import java.util.Stack;
public class Sort {
public static void main(String[] args) {
int[] a = new int[]{3, 9 ,6, 4, 2, 1, 8,10};
//int[] b = bubbleSort(a, a.length);
//int[] b = selectionSort(a, a.length);
@supermanmwg
supermanmwg / CopyOnWriteMap.java
Last active June 6, 2016 09:32
JDK中并没有提供CopyOnWriteMap,我们可以参考CopyOnWriteArrayList来实现一个,基本代码如下:
import java.util.Collection;
import java.util.Map;
import java.util.Set;
public class CopyOnWriteMap<K, V> implements Map<K, V>, Cloneable {
private volatile Map<K, V> internalMap;
public CopyOnWriteMap() {
internalMap = new HashMap<K, V>();
}
@supermanmwg
supermanmwg / resizeBitmap.java
Last active May 13, 2016 08:11
根据dp调整图片的大小
private static Bitmap resize(Context context,Bitmap bitmap,float widthDp, float heightDp) {
Matrix matrix = new Matrix();
float rWidth = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, widthDp, context.getResources().getDisplayMetrics());
float rHeight = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, heightDp, context.getResources().getDisplayMetrics());
float wScale = rWidth / bitmap.getWidth();
float hScale = rHeight / bitmap.getHeight();
if(wScale < hScale) {
hScale = wScale;
} else {
wScale = hScale;
@supermanmwg
supermanmwg / AbsListView.java
Created May 12, 2016 13:52
终于找到listView服用的关键代码
//......
private ArrayList<View>[] mScrapViews;
private int mViewTypeCount;
private ArrayList<View> mCurrentScrap;
//......
@supermanmwg
supermanmwg / getBattertyInfo.java
Created May 11, 2016 06:59
获得电池的信息
public class SystemUtils {
private static final String TAG = "SystemUtils";
public static void getBatteryInfo(Context context) {
Intent intent = context.getApplicationContext().registerReceiver(null,
new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
int status = intent.getIntExtra(BatteryManager.EXTRA_STATUS, 0);
int health = intent.getIntExtra(BatteryManager.EXTRA_HEALTH, 0);
boolean present = intent.getBooleanExtra(BatteryManager.EXTRA_PRESENT, false);
int level = intent.getIntExtra(BatteryManager.EXTRA_LEVEL, 0);
@supermanmwg
supermanmwg / GetTime.java
Created May 11, 2016 01:39
获得时间:小时:分钟:秒
public class Time {
private static final String TAG = "Time";
public static void getTime() {
Calendar now = Calendar.getInstance();
int year = now.get(Calendar.YEAR);
int month = now.get(Calendar.MONTH) + 1; // Note: zero based!
int day = now.get(Calendar.DAY_OF_MONTH);
int hour = now.get(Calendar.HOUR_OF_DAY);
int minute = now.get(Calendar.MINUTE);