- PR -

型チェックについて

1
投稿者投稿内容
geekfreed
会議室デビュー日: 2003/11/17
投稿数: 17
投稿日時: 2004-05-19 14:22
いつもお世話になります。

型チェックについてお聞きしたいことがあります。

例えば、
「String str01 = "10.26";
 String str02 = "10.26a";」
のように2つのString型の変数があるとします。

double型に2つの変数を変換するとき
str01ではできますが、str02ではできないと思います。
(当たり前のことですが。。。)
そこで、何かのメソッドを使用し、str01はtrue(変換可能)
str02はfalse(変換不可能)のようにできないでしょうか?
また、int型にしようとするとstr01、str02ともにfalse(変換不可能)
としたいのです。
尚、STURTSは使用していません。

// possibleDoubleはイメージです。
// ↓こんな感じで処理したいのですが。。。
if( Double.possibleDouble( str01 ) == true )
{
double = Double.parseDouble( str01 );
}
else
{
System.out.println( "double型に変換できません" );
}

宜しく御願いします。
Cluster
ぬし
会議室デビュー日: 2003/03/06
投稿数: 289
お住まい・勤務地: 大阪
投稿日時: 2004-05-19 14:57
このスレッドは参考になりませんか?
あとは、このスレッドとか
Edosson
ぬし
会議室デビュー日: 2004/04/30
投稿数: 675
投稿日時: 2004-05-19 14:58
使用例の通りに利用されるつもりなのであれば、try-catchを
そのまま分岐に利用するのではダメなんでしょうか。
その方が効率的だし、スマートだと思いますが。

どうしてもメソッドに、というのでしたら、こんな感じでしょうか。

コード:
public boolean possibleParseDouble ( String value ) {
    try {
        Double.parseDouble( value );
        return true;
    } catch ( NumberFormatException e ) {
        return false;
    }
}



逆に、私だったらこういう風にしか書けないから、
2度手間を惜しんで、try-catchを分岐に利用するんですが
geekfreed
会議室デビュー日: 2003/11/17
投稿数: 17
投稿日時: 2004-05-19 15:06
返答してくださった皆様、有難う御座います。
回答をヒントにやってみます。
1

スキルアップ/キャリアアップ(JOB@IT)