

androidで[TouchImageView](https://github.com/MikeOrtiz/TouchImageView)を使っています。  
画像の大きい辺/小さい辺 でズームの値を算出したいのですが、  
コードで出力すると  
width770  
height1035  
1.0  
のようになり、1035/770が1.0になってしまいます。

[code]

    contentImage.setOnDoubleTapListener(new GestureDetector.OnDoubleTapListener() {
    @Override
    public boolean onSingleTapConfirmed(MotionEvent e) {
        return true;
    }
    
    @Override
    public boolean onDoubleTap(MotionEvent e) {
        int width = contentImage.getDrawable().getIntrinsicWidth();
        int height = contentImage.getDrawable().getIntrinsicHeight();
        System.out.println("width" + width);
        System.out.println("height" + height);
        int max = Math.max(width, height);
        int min = Math.min(width, height);
        float zoom = max / min;
        System.out.println(zoom);
        contentImage.setZoom(max / min);
        return false;
    }
    
    @Override
    public boolean onDoubleTapEvent(MotionEvent e) {
        return true;
    }});
    
[/code]


CC BY-SA 3.0
2017-07-27T09:59:58.070
36723
2017-07-27T10:10:20.727
13588
question
android
割り算を用いてfloat型を得ようとすると1.0になる


変数`max`と`min`が`int`型のため、`max /
min`が整数どうしの割り算と(コンパイラで)解釈され、結果が整数(`int`)型になっているためと思います。

`max`と`min`を`float`型にすることで期待通りになると思います。


CC BY-SA 3.0
2017-07-27T10:10:20.727
36724
2017-07-27T10:10:20.727
20098
36723
answer