StringBuilderのinsertテスト
StringBuilderを使用したindexOfのサンプルです。
package com.example.test.test40;
import android.util.Log;
public class clsTest3 extends clsCommon {
//insertテスト
public void test3()
{
//Stringをinsert
Log.d("test3_1();","Stringをinsert");
test3_1();
//StringBuilderをinsert
Log.d("test3_2();","StringBuilderをinsert");
test3_2();
/*
start: insertテスト -----------------------------------
test3_1();: Stringをinsert
insertした結果: ghabcdei@
test3_2();: StringBuilderをinsert
txt1.insert(0,txt2.toString()): vwxyzabcde
txt1.insert(0,txt2): 12345vwxyzabcde
end: insertテスト -----------------------------------
*/
}
//Stringをinsert
private void test3_1()
{
StringBuilder txt1=new StringBuilder();
txt1.append("abcde");
//一番開始位置にhが挿入されます
txt1.insert(0,"h");
//一番開始位置にhが挿入されます
//そのためhが2番目になります
txt1.insert(0,"g");
//txt1の最後にiが入ります
txt1.insert(txt1.length(),"i");
//txt1の最後から2番目(右から2番目)に@が入ります
txt1.insert(txt1.length(),"@");
displayStringBuilderData("insertした結果",txt1);
txt1 = null;
}
//StringBuilderをinsert
private void test3_2()
{
StringBuilder txt1=new StringBuilder();
StringBuilder txt2=new StringBuilder();
txt1.append("abcde");
txt2.append("vwxyz");
//toStringを使用して文字列型としてinsertします
txt1.insert(0,txt2.toString());
displayStringBuilderData("txt1.insert(0,txt2.toString())", txt1);
clearStringBuilderData(txt2);
//StringBulderとしてinsertします
txt2.append("12345");
txt1.insert(0,txt2);
displayStringBuilderData("txt1.insert(0,txt2)", txt1);
txt1 = null;
txt2 = null;
}
}
|
結果
start: insertテスト -----------------------------------
test3_1();: Stringをinsert
insertした結果: ghabcdei@
test3_2();: StringBuilderをinsert
txt1.insert(0,txt2.toString()): vwxyzabcde
txt1.insert(0,txt2): 12345vwxyzabcde
end: insertテスト -----------------------------------
共通メソッドおよびクラスをインスタンス化して実行しているメソッドは次の通りとなります。
package com.example.test.test40;
import android.util.Log;
public class clsCommon {
//StringBuilderのデータをクリアする
//StringBuilderに格納されている文字列
protected void clearStringBuilderData(StringBuilder sData)
{
sData.delete(0, sData.length());
//文字シーケンスに使用されるデータを減らそうとします
//trimToSizeメソッドを使用するとcapacityメソッドの後続呼び出しで
//返される値に影響する可能性があります
//sData.trimToSize();
}
//StringBuilderの結果を表示する
//sTile:ラベル
//StringBuilderに格納されている文字列
protected void displayStringBuilderData(String sTitle, StringBuilder sData)
{
Log.d(sTitle, sData.toString());
}
protected void displayStringBuilderData(String sTitle, int iData)
{
Log.d(sTitle, String.valueOf(iData));
}
}
|
package com.example.test.test40;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//deleteのテスト
Log.d("start","deleteのテスト -----------------------------------");
clsTest1 cls1 = new clsTest1();
cls1.test1();
cls1=null;
Log.d("end","deleteのテスト -----------------------------------");
//影響テスト
Log.d("start","影響テスト -----------------------------------");
clsTest2 cls2 = new clsTest2();
cls2.test2();
cls2 = null;
Log.d("end","影響テスト -----------------------------------");
//insertテスト
Log.d("start","insertテスト -----------------------------------");
clsTest3 cls3 = new clsTest3();
cls3.test3();
cls3 = null;
Log.d("end","insertテスト -----------------------------------");
//indexOfテスト
Log.d("start","indexOfテスト -----------------------------------");
clsTest4 cls4 = new clsTest4();
cls4.test4();
cls4 = null;
Log.d("end","indexOfテスト -----------------------------------");
//deleteCharAtテスト
Log.d("start","deleteCharAtテスト -----------------------------------");
clsTest5 cls5 = new clsTest5();
cls5.test5();
cls5 = null;
Log.d("end","deleteCharAtテスト -----------------------------------");
//replaceテスト
Log.d("start","replaceテスト -----------------------------------");
clsTest6 cls6 = new clsTest6();
cls6.test6();
cls6 = null;
Log.d("end","replaceテスト -----------------------------------");
}
}
|
|
|