2012-05-29 3 views
1

나는 여기자바 안드로이드 통과하는 데이터 배열

내가

double [][] tableCityPair = new double[100][100]; 

클래스 1의 배열이 안드로이드 응용 프로그램의 의도에 대한 질문 --- 코드 배열을 채우기 위해 ---이 에서 클래스의 끝 나는 tableCityPair 다른 클래스, 클래스 2 보내고 싶어.

어떻게 클래스 2에 배열을 선언해야합니까?
이게 맞습니까?

Intent it = getIntent(); 
double tabelJarakAntarKota= it.getDoubleExtra("tableCityPair",3); 

답변

1

Bundle 클래스 지나가는 double의 배열을 검색하기위한 방법을 가지고

그러나, 일차원 어레이에 대해 이러한 작업. 2D 배열을 전달하려고합니다. 나는 이것을하는 직접적인 방법을 모른다. 이것을 달성하는 한 가지 방법은 N 개의 double 배열을 루프에 넣는 것입니다.

for(int i=0;i<tableCityPair.length;i++){ 
    bundle.put("tableCity"+i, tableCityPair[i]); 
} 

그리고 수신 측

, 당신이 할 :

double [] aPair = it.getExtras().getDoubleArray("tableCity"+i); 

나는이 생각의 성능에 미치는 영향에 대해 확실하지 않다; 번들의 일부로 100 개의 추가 기능을 추가 할 것이기 때문입니다.

아마도 더 좋은 방법이있을 수 있습니다. 아마도 쌍을 List<List<Double>>으로 만든 다음 Parcelable을 구현하면됩니다. 그러나 제안하지 않으려 고 시도하지 않았습니다.

0
double [][] tableCityPair = new double[100][100]; 

그리고 ... 목적을 그 다음 = .... 다음

put: `it.putExtra("size",tableCityPair.length)` 

: 클래스 B에 THEN

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

it.putExtra("table"+i,tableVityPair[i][]); 

} 

double [][] tableCityPairinB = new double[100][100]; 
for(i=0;i<getIntent().getExtras("size");i++) 
{ 
double[i][]=getIntent().getExtras("table"+i); 

} 
,
+0

질문은 두 배의 _array_를 전달하는 것에 관한 것입니다. – curioustechizen

+0

감사합니다 fr 머리 위로 ... 나는 그것을 지금 편집했습니다 ... – jaisonDavis

+0

@ jaisonDavis 그 코드를 시도하지만 여전히 오류 : 메서드 번들 getDoubleArray (String) 인수 (String, int) 적용 할 수 없습니다. – sephtian