Java | 文字列の切り出し(substring)

NO IMAGE
         

この記事は1年以上前に更新されたものです。内容が古い可能性がありますのでご注意ください。

Javaで指定文字を切り出す

一般的には、substring()を使用すると思います。
(というかそれしか知りません・・・)

で、普段はどう使っているかというと

String s = "123456";

String s1 = s.substring(3, 5);

これでs1には[45]が格納されてます。

しかし、今回は後ろから2文字消したい!
なぜか!!

 

小数点がついた文字列を渡されてきますが、小数点は要らない。。。
そんな仕様です。

123456.00円

最後の.00円を削除したい!

実装

悩みましたが、わかってしまうと何で思いつかなかったのかと。。。

String s = "123456.00";
String s1 = s.substring(0, s.length()-3)

lengthからマイナス値を入れる考えが全くありませんでした・・・。ハイ・・・。

substring()の第1パラメータは、開始位置。
つまり[0]で先頭から。

第2パラメータは、終了位置。
よって、前方より数えた終了値を設定しますが、今回は後ろ3文字(3桁)が不要。
つまり、文字列の長さ(length())を取ってそこから、-3(3文字)引いたものが、求めている文字列。

あースッキリ。

だけど、小数点以下変わると対応出来ないな・・・。