[java] 文字列の一部を切り取る方法(substring)
こんにちは。
今回は文字列の一部を切り取る方法について解説します。
具体的には、String.substringメソッドの使い方の説明です。
ある文字列のx番目からy番目までの文字を抜き取るイメージです。
●文法
public String substring(beginindex, endindex)
beginindex: 開始位置のindexです。先頭からなら「0」となります。
endindex: 終了位置のindexに1を加えた値です。直観的ではないですが、endindex-beginindexが切り取り後の文字列長になるようです。
また、Stringクラスのメソッドですので、「切り取り元の文字列は変化せずそのまま」です。
切り取られた文字列は、元の文字列と別のオブジェクトとなります。
●覚え方
私はいつもド忘れしてしまうので、以下のような絵で覚えてます。
「20140725」という文字列の「年」を切り取りたい場合、以下になります。
"20140725".substring(0, 4) // ⇒「2014」が切り取られる
「20140725」という文字列の「月」を切り取りたい場合、以下になります。
"20140725".substring(4, 6) // ⇒「07」が切り取られる
「20140725」という文字列の「日」を切り取りたい場合、以下になります。
"20140725".substring(6, 8) // ⇒「25」が切り取られる
●サンプルプログラム
最後にサンプルプログラムで実際に試しましょう。
YYYYMMDD形式の日付リストをYYYY-MM-DD形式に変換して出力します。
●プログラム
package test.string.substring;
import java.util.ArrayList;
import java.util.List;
public class TestSubstring {
public static final String SEPERATOR = "-";
public static void main(String[] args){
// リスト初期化
List<String> list = new ArrayList<String>();
// 文字列リスト作成
list.add("20140701");
list.add("20140702");
list.add("20140703");
list.add("20140704");
list.add("20140705");
for(String str : list){
// YYYY-MM-DD形式で出力する
System.out.println(str.substring(0, 4) + SEPERATOR + str.substring(4, 6) + SEPERATOR + str.substring(6, 8));
}
}
}
●実行結果
2014-07-01
2014-07-02
2014-07-03
2014-07-04
2014-07-05
スポンサードリンク
関連記事
-
[Java] Javaのインストール(プログラム開発・入門用)
Javaのコードを書きたい!! という目的のためのJavaのインストール方法と、コマンドラインでの
-
[Java][Framework] Spring Bootを使って、Spring MVC速攻開発してみる!(DB接続あり)
STSインストール STSは、EclipseにSpring関連のいろいろな機能を詰め込んだオールイ
-
[Java] Apache POIでExcel操作!
Apache POIをまずは使ってみようという方(自分も含め)のメモ 導入 Maven htt
-
[Java] クラスとインスタンス
こんにちは。 クラスとインスタンスについて解説します。 インスタンスは「オブジェクト」とも言
-
[Java][Servlet][JSP] ServletからJSPへの転送
こんにちは。 今回は、「Servletでリクエストを受けて、JSPで表示する。」方法を解説しま
-
[Java][基本] ループ処理(for文)
Javaのループ処理の基本である、for文を解説します。 ●文法 for( [①初期化];
-
[Java][JSP] EclipseでのJSP作成
今回は、Eclipseを用いてJSPを作成してみます。 まず、Eclipseを起動します。
-
[Java][Eclipse] Mavenが利用可能な動的Webプロジェクトの作成
こんにちは、keiです。 今回は、Mavenが利用可能な動的Webプロジェクトの作成について解
-
[Java] 文字列の分割(split)
こんにちは。 今回は、文字列の分割について解説します。 昔はStringTokenize
-
[Java][Framework] Spring BootのJPAでDB接続した際のEntityキャッシュのクリア方法
Spring BootのJPAでDBアクセスした際に、処理を一定量こなすと、Heapが足りなくな
スポンサードリンク
- PREV
- [Java] 文字列の分割(split)
- NEXT
- [Java] CSVファイルの読み込み方法
Comment
[…] テスト投稿 […]
[…] テスト投稿 テスト投稿2 […]