[解決済み] 2つのintの除算で別のintではなくfloatを生成させるには?
2022-01-31 14:39:42
質問
ブルース・エッケルズ氏の別の演習で、速度の計算をする。
v = s / t
ここで、s と t は整数です。 どうすれば除算で浮動小数点が出るようになりますか?
class CalcV {
float v;
float calcV(int s, int t) {
v = s / t;
return v;
} //end calcV
}
public class PassObject {
public static void main (String[] args ) {
int distance;
distance = 4;
int t;
t = 3;
float outV;
CalcV v = new CalcV();
outV = v.calcV(distance, t);
System.out.println("velocity : " + outV);
} //end main
}//end class
解決方法は?
2つのオペランドのうち、どちらかを先にfloatにキャストすればよいのです。
v = (float)s / t;
キャストは分割より優先順位が高いので、分割の前に行われます。
これは、オペランドのどちらかが浮動小数点型であれば、もう一方のオペランドが整数型であっても浮動小数点演算になる、という規則があるためです。 Java 言語仕様書、§4.2.4 と §15.17
関連
-
[解決済み】このコンパイルユニットは名前付きモジュールに関連しているため、名前付きパッケージeclipseを宣言する必要があります。
-
[解決済み】"実引数リストと形式引数リストの長さが異なる"
-
[解決済み】Java、"変数名 "を変数に解決することができない
-
[解決済み] java のクラス内のコンストラクタは、指定された型に適用できない
-
[解決済み】エラー「No enclosing instance of type Foo is accessible」の原因と修正方法について教えてください。
-
[解決済み】Javaの部分文字列:「文字列のインデックスが範囲外」。
-
[解決済み】keytoolエラー 鍵屋が改ざんされたか、パスワードが不正確だった場合
-
[解決済み】Eclipseで「公開型 <<classname>> は独自のファイルで定義する必要があります」エラー【重複あり
-
[解決済み] JavaでSSLピアが正しくシャットダウンされない
-
[解決済み】intがnullであるかどうかを確認する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] java.sql.SQLException: ユーザー 'root'@'localhost' (using password: YES) のためのアクセスが拒否されました。
-
[解決済み】StringUtils.isBlank() vs String.isEmpty()
-
[解決済み] 二項演算子「&」のオペランド型がおかしい java
-
[解決済み】Eclipseがエラーメッセージ "Java was started but returned exit code = 1" を返す
-
[解決済み】Javaでユーザー入力を待機させる方法
-
[解決済み】破損したjarファイル
-
[解決済み】Eclipseで「JUnitテストが見つかりませんでした。
-
[解決済み】Java Error "Exception in thread "main" java.util.InputMismatchException" Array プログラムで発生。
-
[解決済み] JavaでSSLピアが正しくシャットダウンされない
-
[解決済み】フォルダに書き込もうとすると「java.nio.file.AccessDeniedException」が発生する件