2017-10-17 11 views
-4

をArrayListに文字列を反復I値を持つ文字列を持っているとして:解析と

ストリングlstr = 12.88、77.56]、[12.81、77.7156]

....

にそう私が変換しようとした

final ArrayList<Coordinate> points = new ArrayList<Coordinate>(); 
     points.add(new Coordinate(12.88, 77.56)); 
     points.add(new Coordinate(12.81, 77.7156)); 

:私はそれを解析し、反復処理する必要があり、何とかとして値を代入

stringをListにしてからforループを使ってiteratingしますが、動作していません。境界が外れたり余分な角括弧が出たりすると例外がスローされます。 このような文字列を解析、書式設定、反復する最も良い方法は何ですか?

+3

あなたが試したことと何がエラーなのかを見せてください。誰かがあなたのためにやりたいのですか? –

+0

「余分な角括弧が例外をスローする」とはどういう意味ですか?あなたのループコードを見せてください!どのような例外がありますか? – WilomGfx

+3

最初の行は適切なJavaコードではありません。 –

答えて

2

以下の例のようにすることができます。空白を確認する正規表現を改善することができることに注意してください。

String lstr = "[12.88, 77.56],[12.81, 77.7156]"; 

List<Coordinate> cors = new ArrayList<Coordinate>(); 

String []coordinates = lstr.split("\\],\\["); 

for(String cordinate:coordinates) 
{ 
    String []xy = cordinate.split(","); 
    cors.add(new Coordinate(xy[0],xy[1])); 
} 
System.out.println(cors);