主にRPA、Androidアプリ開発について投稿しています。メモ書きです。
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
String.split(regex,limit)
String str = "1,2,3,4,5,,,,,"のような文字列の場合、str.split(",")で区切ると、空白の値が配列から消えてしまう。
⇒{"1","2","3","4","5"} となる。
これを回避するには第二引数 の limit に -1 を設定する
String[] data = line.split(",",-1);
Map<ArrayList<String>,String> map = new HashMap<>();Listを用いてやれば可能となった。
String str1 = "あいう";
String str2 = "かきく";
ArrayList<String> array = new ArrayList<>();
array.add(str1);
array.add(str2);
map.put(array,"さしす");
ArrayList<String> array2 = new ArrayList<>();
array2.add(str1);
array2.add(str2);
map.get(array2);
/**
* 任意出力用ログ
* @param message
* @return
*/
public static int i(String message){
//クラス名.メソッド名.行数,メッセージ
StackTraceElement ste = Thread.currentThread().getStackTrace()[3];
return Log.i("☆" + ste.getClassName() + "." + ste.getMethodName() + ":" + ste.getLineNumber(),message);
}
@Override
protected Boolean doInBackground(ArrayList<JSONData>... params) {
android.os.Debug.waitForDebugger();
private void ThreadTest(){
new Thread(new Runnable() {
@Override
public void run() {
isOnline();
}
}).start();
}
Handler handler = new Handler();
Runnable runnable = new Runnable() {
@Override
public void run() {
aaa();
}
};
handler.postDelayed(runnable,1000);
}catch (Exception e){
//クラス名.メソッド名:原因
Log.e(e.getStackTrace()[1].getClassName() + "." + e.getStackTrace()[1].getMethodName(),e.getMessage());
//×:java.lang.Integer.parseInt:For input string:"s"
Log.e(e.getStackTrace()[2].getClassName() + "." + e.getStackTrace()[2].getMethodName(),e.getLocalizedMessage());//エラー箇所
//〇
String str;
//クラス名の出力
str = new Object(){}.getClass().getName();
Log.e("1.Class:",str);//△:末尾に$nがつく
str = new Object(){}.getClass().getEnclosingClass().getName();
Log.e("2.Class:",str);//〇
str = Thread.currentThread().getStackTrace()[1].getClassName(); //スタックトレースから取得
Log.e("3.Class:",str);//×:java.lang.Thread
//メソッド名の出力
str = new Object(){}.getClass().getEnclosingMethod().getName(); //
Log.e("1.Method:",str);//〇
str = Thread.currentThread().getStackTrace()[1].getMethodName();
Log.e("2.Method:",str);//×:getStackTrace
StackTraceElement[] ste = e.getStackTrace();
Log.e("StackTraceElement[1]","-------------------------------");
Log.e("FileName:",ste[1].getFileName());
//Integer.jaa
Log.e("ClassName:",ste[1].getClassName());
//java.lang.Integer
Log.e("MethodName:",ste[1].getMethodName());
//parseInt
Log.e("LineNumber:",Integer.toString(ste[1].getLineNumber()));
//556
Log.e("StackTraceElement[2]","-------------------------------");
Log.e("FileName:",ste[2].getFileName());
//〇
Log.e("ClassName:",ste[2].getClassName());
//〇:パッケージ名.クラス名
Log.e("MethodName:",ste[2].getMethodName());
//〇
Log.e("LineNumber:",Integer.toString(ste[2].getLineNumber()));
//〇
e.printStackTrace();
Log.e("getMessage",e.getMessage());
//For input string:"s"
Log.e("getLocalizedMessage()",e.getLocalizedMessage());
//For input string:"s"
Log.e("getStackTrace()[2].toString()",e.getStackTrace()[2].toString());
Log.e("getClass.getSimpleName+getMessage",e.getClass().getSimpleName()+":"+e.getMessage());
}
}catch (Exception e){getStackTrace()[1]と[2]の違いは要調査。
Log.e(e.getStackTrace()[1].getClassName() + "." + e.getStackTrace()[1].getMethodName(),e.getMessage());
Log.e(e.getStackTrace()[2].getClassName() + "." + e.getStackTrace()[2].getMethodName(),e.getLocalizedMessage());
}
Map<List<String>,String> dataMap = new HashMap();変数furiganaには、”やまだたろう”が格納される。
List<String> data = new ArrayList<>();
data.add("山田");
data.add("太郎");
dataMap.put(data,"やまだたろう");
List<String> keys = new ArrayList<>();
keys.add("山田");
keys.add("太郎");
String furigana = dataMap.get(keys);
//数量は、0.00~99.99
dbSuuryo = Math.random() * 100;
flSuuryo = Float.valueOf(String.valueOf(dbSuuryo));
if(flSuuryo > 99.995f){
flSuuryo = 99.99f;
}
String str = String.format("%.2f",flSuuryo);
public void getYoubi() {
String[] dayOfWeek = {"日","月","火","水","木","金","土"};
if(Arrays.asList(dayOfWeek).contains("土")){
System.out.println("土曜日はあるよ");
}
else{
System.out.println("土曜日はないよ");
}
}
List<String> list = Arrays.asList(dayOfWeek); //配列をList型オブジェクトに変換
int youbi = list.indexOf(map.get("DAY_OF_WEEK"));
switch (youbi){
case 0://日曜
tvYoubi.setTextColor(Color.parseColor("#FF0000"));
break;
case 6://土曜
tvYoubi.setTextColor(Color.parseColor("#0000FF"));
break;
default://それ以外
tvYoubi.setTextColor(Color.parseColor("#FFFFFF"));
break;
}