| indexOfテスト 
 StringBuilderを使用したindexOfのサンプルです。
 
 
 
 
| package com.example.test.test40; 
 import android.util.Log;
 
 public class clsTest4 extends clsCommon {
 //indexOfテスト
 public void test4()
 {
 Log.d("test4_1();","indexOf");
 test4_1();
 
 Log.d("test4_2();","indexOf 開始位置あり");
 test4_2();
 
 Log.d("test4_3();","lastndexOf");
 test4_3();
 
 Log.d("test4_4();","lastIndexOf 開始位置あり");
 test4_4();
 
 /*
 start: indexOfテスト -----------------------------------
 test4_1();: indexOf
 txt1.indexOf("1"): 0
 txt1.indexOf("1"): 0
 txt1.indexOf("0"): 9
 txt1.indexOf("a"): -1
 test4_2();: indexOf 開始位置あり
 txt1.indexOf("1"): 0
 txt1.indexOf("1",0): 0
 txt1.indexOf("1",1): -1
 txt1.indexOf("a"): -1
 txt1.indexOf("0", txt1.length()): -1
 test4_3();: lastndexOf
 txt1.lastIndexOf("1"): 0
 txt1.lastIndexOf("1"): 9
 txt1.lastIndexOf("a"): -1
 test4_4();: lastIndexOf 開始位置あり
 txt1.indexOf("1"): 0
 txt1.indexOf("1",0): 0
 txt1.indexOf("1",1): 0
 txt1.indexOf("a"): -1
 txt1.indexOf("a", txt1.length()): 9
 end: indexOfテスト -----------------------------------
 */
 }
 //IndexOf
 private void test4_1()
 {
 int iPos = 0;//位置を設定する変数
 StringBuilder txt1 = new StringBuilder();
 txt1.append("1234567890");
 displayStringBuilderData("txt1.indexOf(\"1\")", iPos);
 //最初の文字
 iPos = txt1.indexOf("1");
 displayStringBuilderData("txt1.indexOf(\"1\")", iPos);
 //最後の文字
 iPos = txt1.indexOf("0");
 displayStringBuilderData("txt1.indexOf(\"0\")", iPos);
 //存在しない文字
 iPos = txt1.indexOf("a");
 displayStringBuilderData("txt1.indexOf(\"a\")", iPos);
 
 clearStringBuilderData(txt1);
 }
 //IndexOf 開始位置あり
 private void test4_2()
 {
 int iPos = 0;//位置を設定する変数
 StringBuilder txt1 = new StringBuilder();
 txt1.append("1234567890");
 displayStringBuilderData("txt1.indexOf(\"1\")", iPos);
 //最初の文字位置から探す
 iPos = txt1.indexOf("1",0);
 displayStringBuilderData("txt1.indexOf(\"1\",0)", iPos);
 //2番目の文字位置から探す
 iPos = txt1.indexOf("1",1);
 displayStringBuilderData("txt1.indexOf(\"1\",1)", iPos);
 //ない文字列の位置を探す
 iPos = txt1.indexOf("a");
 displayStringBuilderData("txt1.indexOf(\"a\")", iPos);
 try
 {
 //文字列の長さを超えた長さを第2引数に設定する
 iPos = txt1.indexOf("0", txt1.length());
 displayStringBuilderData("txt1.indexOf(\"0\", txt1.length())", iPos);
 }
 catch (Exception e)
 {
 Log.d("error",e.getMessage().toString());
 }
 finally
 {
 clearStringBuilderData(txt1);
 txt1 = null;
 }
 }
 //lastIndexOf
 private void test4_3()
 {
 int iPos = 0;//位置を設定する変数
 StringBuilder txt1 = new StringBuilder();
 txt1.append("1234567890");
 //1番最初の文字位置を探す
 iPos = txt1.lastIndexOf("1");
 displayStringBuilderData("txt1.lastIndexOf(\"1\")", iPos);
 //1番最後の文字位置を探す
 iPos = txt1.lastIndexOf("0");
 displayStringBuilderData("txt1.lastIndexOf(\"1\")", iPos);
 //存在しない文字を探す
 iPos = txt1.lastIndexOf("a");
 displayStringBuilderData("txt1.lastIndexOf(\"a\")", iPos);
 
 clearStringBuilderData(txt1);
 }
 //lastIndexOf 開始位置あり
 private void test4_4()
 {
 int iPos = 0;//位置を設定する変数
 StringBuilder txt1 = new StringBuilder();
 txt1.append("1234567890");
 displayStringBuilderData("txt1.indexOf(\"1\")", iPos);
 //1番最初の文字位置を探す
 iPos = txt1.lastIndexOf("1",0);
 displayStringBuilderData("txt1.indexOf(\"1\",0)", iPos);
 //1番最後の文字位置を探す
 iPos = txt1.lastIndexOf("1",1);
 displayStringBuilderData("txt1.indexOf(\"1\",1)", iPos);
 //ない文字列の位置を探す
 iPos = txt1.lastIndexOf("a");
 displayStringBuilderData("txt1.indexOf(\"a\")", iPos);
 try
 {
 //文字列の長さを超えた長さを第2引数に設定する
 iPos = txt1.lastIndexOf("0", txt1.length());
 displayStringBuilderData("txt1.indexOf(\"a\", txt1.length())", iPos);
 }
 catch (Exception e)
 {
 Log.d("error",e.getMessage().toString());
 }
 finally
 {
 clearStringBuilderData(txt1);
 txt1 = null;
 }
 }
 }
 
 
 |  
 結果
 
 start: indexOfテスト -----------------------------------
 test4_1();: indexOf
 txt1.indexOf("1"): 0
 txt1.indexOf("1"): 0
 txt1.indexOf("0"): 9
 txt1.indexOf("a"): -1
 test4_2();: indexOf 開始位置あり
 txt1.indexOf("1"): 0
 txt1.indexOf("1",0): 0
 txt1.indexOf("1",1): -1
 txt1.indexOf("a"): -1
 txt1.indexOf("0", txt1.length()): -1
 test4_3();: lastndexOf
 txt1.lastIndexOf("1"): 0
 txt1.lastIndexOf("1"): 9
 txt1.lastIndexOf("a"): -1
 test4_4();: lastIndexOf 開始位置あり
 txt1.indexOf("1"): 0
 txt1.indexOf("1",0): 0
 txt1.indexOf("1",1): 0
 txt1.indexOf("a"): -1
 txt1.indexOf("a", txt1.length()): 9
 end: indexOfテスト -----------------------------------
 
 
 
 共通メソッドおよびクラスをインスタンス化して実行しているメソッドは次の通りとなります。
 
 
 
   
 
 
| 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テスト -----------------------------------");
 }
 }
 
 
 |  
 
 |  |