私の Android アプリには、動的に設定されたフォント サイズを受け取り、それに比例して小さいフォント サイズを返すメソッドがあります。getTextSize() から取得する値は見出し用で、小さい方の値は本文用です。現在、次のように書かれています。
public int getSmallerTextSize(){
int textSize = (int)Math.round(getTextSize() * 0.8);
if(textSize > 20){
textSize = 20;
}else if(textSize < 10){
textSize = 10;
}
return textSize;
}
これを表現するための、より短くてぎこちない方法を見つけたいと思います。1 つのオプションは次のとおりです。
public int getSmallerTextSize(){
int textSize = (int)Math.round(getTextSize() * 0.8);
textSize = textSize > 10 ? textSize : 10;
textSize = textSize > 20 ? 20 : textSize;
return textSize;
}
しかし、繰り返しになりますが、非常に単純なものに大量のコードが必要です。誰かがこれを表現するために、エレガントでできればワンライナーのコードを提案できますか?