j2se1.4にarrayToString見たいな関数ないですか?

int hoge[] = {1,2,3,4,5};
String mumu = arrayToString(hoge);


mumu = ”12345”;
みたいな関数です。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:--
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答3件)

id:ozonepapa No.1

回答回数288ベストアンサー獲得回数0

ポイント20pt

昔、Arrayクラスがあったのですが、今はありません。toString()は、ObjectクラスのメソッドなのでArrayに対してtoString()するとなんらかのStringが返されてきていたはずです。ただ、期待するものとは違うと思われます。

いまは、

プリミティブ(基本データ)タイプの配列にいてはラッパークラスのtoString()を使い以下のように

int[] n = {1,2,3,4,5};

String s = ””;

for(int i=0; i<a.length; i++) {

s += Integer.toString(n[i]);

}

参照型の配列に対して、オーバーライドされたtoString()を使いいかのように

Object[] o = {...........};

String s = ””;

for(int i=0; i<a.length; i++) {

s += o[i].toString();

}

なると思われます。

よくつかうのであれば、クラスメソッドとして作っておくといいですね。

id:kunitz

ありがとうございます!

2004/07/25 20:59:20
id:doikun No.2

回答回数8ベストアンサー獲得回数0

ポイント20pt

Jakarta-CommonsのLangに、同様のメソッドが用意されています。

StringUtilsクラスのjoin(Object[] array)メソッドがそれです。

(java.lang.Object[])

使い方は以下の通りです。

import org.apache.commons.lang.StringUtils;

〜〜(省略)〜〜

String anArray = new String { ”A”, ”B”, ”C” }; //intの配列でも可能です。

String joinedString = StringUtils.join(anArray);

実行すると、joinedStringに文字列”ABC”が取得できます。

※実行時、commons-langのjarファイルにクラスパスが通っている必要があります。

commons-langのjarファイルは、以下のURLからダウンロード可能です。

プロジェクトの状況や都合等によりCommons-Langを利用できない場合は、ご自分でコーディングすることになると思います。

その際は、文字列の連結にStringBufferを利用することで、処理の高速化を図ることが出来ます。

例えば、以下のように記述します。

String anArray = new String { ”A”, ”B”, ”C” }; //intの配列でも可能です。

StringBuffer results = new StringBuffer();

for (int j = 0; j < anArray.length; j++) {

 results.append(strs[j]);

}

results.toString()により、結果の文字列”ABC”を取り出すことが出来ます。

id:kunitz

ありがとうございます!

Jakarta-Commons

2004/07/26 01:53:20
id:doikun No.3

回答回数8ベストアンサー獲得回数0

ポイント20pt

http://www.jajakarta.org/commons/

The Ja-Jakarta Site - Commons

すみません、ミスがありました。

Commons-LangのStringUtilsを利用した場合、intの配列を引数に渡すことが出来ません。

さらにもう一つ。

2つ目のサンプルで、

results.append(strs[j]);

としていますが、正しくは

results.append(anArray[j]);

です。

お詫びして訂正致します。

URLは、Jakarta-Commonsの日本語翻訳サイトです。

id:kunitz

ありがとうございます!

2004/07/26 02:05:12

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません