私はarray.xmlに2つの配列を持っています。一つの配列にはフィートインチの値が入っていて、別の配列にはセンチメートル単位の値が入っています。私はユーザーがフィートインチでいくつかの値を選択するとき、私はセンチメートルで対応する値を表示することができます。 今私は標準的な公式を使用して変換しようとしていたが、それは私に正確な値を与えていない。ここ は私のコードです:Javaの2つの配列を比較する
// if user changed the Height from foot inch to centimeters
if(Height_pref.equals(HEIGHT_UNIT)){
CharSequence []changedHeight = changeHeightCms();
heightPicker.setValues(changedHeight);
height_text.setText(getString(R.string.HeightCms));
}
//method to change height from ft'in" to cms
public CharSequence[] changeHeightCms(){
//final double[] weightLbs = new double[200];
final ArrayList<CharSequence> ChangeheightArray = new ArrayList<CharSequence>();
for (int index = 3; index < 7; index++) {
for (int index1 = 0; index1 < 12; index1++) {
float footinch = ((index*12)+index1);
int centimeters = Math.round((float) (footinch*2.54));
ChangeheightArray.add(centimeters + "");
if (index == 6 && index1 == 4) {
break;
}
}
}
CharSequence[] height1 = new CharSequence[ChangeheightArray.size()];
final CharSequence[] HeightCmsArray = ChangeheightArray.toArray(height1);
return HeightCmsArray;
}
私は、変換を表示することができますどのようにこれらの値をハードコーディングした場合に任意の体は私に言うことができますか?
.....コーディング楽しむが、足のどのように多くの値について、あなたは対応するセンチメートルを持っていますか?いくつかの有限の数字があればそれはうまくいくでしょうが、それらの多くがあるならば、私は動的な変換のアプローチを提案します –
ImperialからMetricへの変換は乗算と加算の数倍です...なぜあなたはしたいですか?足/インチをセンチメートルに変換するためのテーブルルックアップを行いますか?これは[XY問題](http://xyproblem.info)のような臭いです –
@vivek 3.0から7.0までの値を持っています –