-1

いくつかの変数を文字列に変換して、メッセージまたはメソッド経由で送信したい場合があります。

たとえば、次の変数がある場合:

int addressNum = 223;
String stName = "Main St";
String city = "Chicago";

それを単一の文字列"223; Main St; Chicago"に変換して変数に戻すにはどうすればよいですか?

4

4 に答える 4

3

ある種の区切り文字を使用します(, :)

String fullAddress+=addressNum+":"+stName+":"+city;

後で、使用される区切り文字に基づいて fullAddress を分割します。

String[] arr = fullAddress.split(":");
int addressNumber = Integer.parseInt(arr[0]);
String streetName = arr[1];
String cityName = arr[2];
于 2013-02-27T20:17:39.687 に答える
1
String oneLine = addressNum + "; " + stName + "; " + city; - make it in sinle line

// split it to variables below
String[] arr = oneLine.split(";");
addressNum = Integer.parseString(arr[0].trim());
stName = arr[1].trim();
city = arr[2].trim();
于 2013-02-27T20:21:41.850 に答える
0

選択するエンコーディングは可逆 (全単射) でなければなりません。

  • 文字列は引用できます
  • フィールド名を使用できます:adress="value"
  • セパレーターは適切に選択する必要があります。つまり、「通常の」値には表示されません...
  • ...

JSONByteBufferなどの標準を使用することをお勧めします。

于 2013-02-27T20:19:48.773 に答える
0

String の代わりに、データを保持するラッパー クラスを記述します。

public class SomeWrapper
{
    int addressNum;
    String stName;
    String city;

    // constructors, setters and getters
}

次に、次のように使用します。

SomeWrapper w = new SomeWrapper(223, "Main St", "Chicago");

次のように抽出します。

int addressNum = w.getAddressNumber();
String stName = w.getStreetName();
String city = w.getCity();

そして、単純に次のようなメソッドに渡すことができます:

public static void doSomething(SomeWrapper w)
{
    int addressNum = w.getAddressNumber();
    // ...
}

// ...

public static void main(String[] args)
{
    SomeWrapper w = ...;
    doSomething(w);
}
于 2013-02-27T20:18:55.317 に答える