はじめに
今回はJavaのいろんな文字列操作について勉強したことを記載していきたいと思います。
記載内容は主に「文字列結合」「文字列検索」「文字列比較」「文字列置換」
文字列結合
+演算子による結合
「+」演算子を使用することで文字列の結合をすることができます。ただし、+演算子を使用時を使用するたびにオブジェクトが生成され続けるため、メモリの圧迫を引き起こす可能性があります。そのためループ処理を実施する際に使用し続ける際には推奨されません。
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
System.out.println("Hello" + "World");
}
StringBuilderによる結合
大量の文字列結合が発生する場合は、StringBuilderを使用することが推奨されます。
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
StringBuilder message = new StringBuilder();
message.append("Hello");
message.append("World");
System.out.println(message);
}
Concatによる結合
concatメソッドを使用することで、文字列結合をすることも可能です。
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
String message = "Hello";
String message2 = "World";
System.out.println(message.concat(message2));
}
文字列の長さ
length
lengthメソッドを使用することで、文字列の長さを取得することができます。
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
String message = "Hello World";
System.out.println(message.length());
}
文字列の切り取り
substring
文字列の切り取りを実施するにはsubstringメソッドを使用します。引数のindexは「0」からはじまります。
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
String message = "Hello World";
// 6文字目を取得
System.out.println(message.substring(5));
// 6文字目から8文字目を取得
System.out.println(message.substring(5,7));
}
文字列の分割
split
指定した文字で文字列を分割するには、splitメソッドを使用します。
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
String message = "H,e,l,l,o,W,o,r,l,d";
String[] splitMessage = message.split(",");
System.out.println(splitMessage.length);
}
文字列比較
equals
文字列を比較するときは、equalsメソッドを使用します。
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
String message = "Hello";
String message2 = "World";
System.out.println(message.equals(message2));
}
equalsIgnoreCase
大文字小文字を無視した文字列比較をする際は、equalsIgnoreCaseを使用します。
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
String message = "hello";
String message2 = "HELLO";
System.out.println(message.equalsIgnoreCase(message2));
}
文字列置換
replace
指定した文字列を置換する際は、replaceメソッドを使用します。第1引数の文字列を第2引数の文字列に変換することができます。
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
String message = "Hello World";
System.out.println(message.replace("World", "Hello"));
}
大文字・小文字に変換
toUpperCase/toLowerCase
大文字に変換する場合は、toUpperCaseを使用し、小文字に変換する場合はtoLowerCaseを使用します。
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
String message = "Hello World";
System.out.println(message.toUpperCase());
System.out.println(message.toLowerCase());
}
前後の空白を埋める
trim
trimを使用することで前後の空白を埋めることができます。
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
String message = " Hello World ";
System.out.println(message.trim());
}
文字列を数値に変換する
parseInt
parseIntを使用することで、文字列からintに変換することができます。
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
String message = "5";
int i = Integer.parseInt(message);
System.out.println(i);
}
文字列の中に変数を埋め込む
format
formatメソッドを使用することで、文字列の途中に変数の文字列を埋め込むことができます。埋め込む箇所を「%s」と記述した箇所になります。
第1引数に対して、第2引数以降で指定した文字列を順番に埋め込みます。複数指定したい場合は、その数分「%s」と引数を追加します。
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
String message = "Hello World %s";
String message2 = "%s Hello %s World%s ";
String test = "test";
System.out.println(String.format(message, test));
System.out.println(String.format(message2, test, test, test));
}
ドキュメント
【公式ドキュメント】
Java SE Specifications (oracle.com)
最後に
Javaの環境構築は、この記事を参照してみてください。
【開発環境構築】VS CodeでJavaを使用するための環境構築を実施する – SEもりのLog (selifemorizo.com)
以上、ログになります。
これからも継続していきましょう!!
コメント