本文目錄一覽:
java除法
如果你想要帶小數的結果那麼在聲明的時候就要把變量聲明成浮點型
float = 0.0f
double = 0.0
補充
因為你聲明的5和2都是int型的變量,所以計算出來的結果也是int型的,int型是整型變量,沒有小數部分,所以要把它們聲明成浮點數(即小數),例如float=5.0f;float = 2.0f;後邊的f表示2.0是float型的單精度浮點數,如果不帶f則是默認的double型雙精度浮點數。兩個float型的數字相除,這樣計算的結果也使float型的,所以就會有小數部分出現了
java除法計算
方法一:
double myNum2 = 111231.5585478;
java.math.BigDecimal b = new java.math.BigDecimal(myNum2);
double myNum3 = b.setScale(5, java.math.BigDecimal.ROUND_HALF_UP).doubleValue();
System.out.println(myNum2);
System.out.println(myNum3);
方法二:
double d = 3.1465926;
String result = String.format(“%.2f”, d);
System.out.println(result);
java程序,用圖形實現乘除運算
簡易的計算器代碼如下,請參照:
import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
/**
* 計算器類
*
* @author Administrator
*
*/
public class Calculator extends JFrame implements ActionListener {
private static final long serialVersionUID = 3868243398506940702L;
// 文本框
private JTextField result;
// 按鈕數組
private JButton[] buttons;
// 按鈕文本
private final String[] characters = { “7”, “8”, “9”, “/”, “4”, “5”, “6”,
“*”, “1”, “2”, “3”, “-“, “0”, “.”, “=”, “+” };
// 是否為第一個輸入的數字
private boolean isFirstDigit = true;
// 運算結果
private double resultNum = 0.0;
// 運算符
private String operator = “=”;
public Calculator(String title) {
// 設置標題欄
super(title);
// 初始化各組件
init();
// 註冊各組件監聽器
registerListener();
// 顯示窗體
setVisible(true);
}
/**
* 初始化各組件
*/
private void init() {
// 常用屬性初始化
setSize(220, 200);
setResizable(false);
setLocationRelativeTo(null);
setDefaultCloseOperation(EXIT_ON_CLOSE);
/* 文本框對象初始化 */
result = new JTextField(“0”);
// 文本右對齊
result.setHorizontalAlignment(JTextField.RIGHT);
// 設置是否可編輯
result.setEditable(false);
/* 按鈕初始化 */
buttons = new JButton[characters.length];
for (int i = 0; i buttons.length; i++) {
buttons[i] = new JButton(characters[i]);
buttons[i].setFocusable(false); // 不允許按鈕定位焦點
}
/* 將文本框與按鈕添加到窗體中 */
add(result, BorderLayout.NORTH);
JPanel pnl = new JPanel(new GridLayout(4, 4, 5, 5));
for (JButton jButton : buttons) {
pnl.add(jButton);
}
add(pnl);
this.getContentPane().setFocusable(true);
}
/**
* 註冊監聽器
*/
private void registerListener() {
for (JButton jButton : buttons) {
jButton.addActionListener(this);
}
// 註冊鍵盤事件
this.getContentPane().addKeyListener(new KeyAdapter() {
@Override
public void keyPressed(KeyEvent e) {
String text = String.valueOf(e.getKeyChar());
if (Character.isDigit(text.charAt(0)) || “.”.equals(text)) { // 數字或小數點
handleNumber(text);
} else if (“+-*/=”.indexOf(text) != -1) { // 運算符
handleOperator(text);
} else if (e.getKeyCode() == 8) { // 退格鍵
String tmp = result.getText().trim();
if (tmp.length() == 1) {
result.setText(“0”);
isFirstDigit = true;
} else {
result.setText(tmp.substring(0, tmp.length() – 1));
}
}
}
});
}
@Override
public void actionPerformed(ActionEvent e) {
JButton btn = (JButton) e.getSource();
String text = btn.getText().trim();
if (Character.isDigit(text.charAt(0)) || “.”.equals(text)) { // 處理數字和小數點
handleNumber(text);
} else { // 處理運算符
handleOperator(text);
}
}
/**
* 處理數字和小數點
*
* @param text
*/
private void handleNumber(String text) {
if (isFirstDigit) { // 第一次輸入
if (“.”.equals(text)) {
this.result.setText(“0.”);
} else {
this.result.setText(text);
}
} else if (“0”.equals(text) “0”.equals(this.result.getText())) {
isFirstDigit = true;
return;
} else if (“.”.equals(text) this.result.getText().indexOf(“.”) == -1) {
this.result.setText(this.result.getText() + “.”);
} else if (!”.”.equals(text)) {
this.result.setText(this.result.getText() + text);
}
isFirstDigit = false;
}
/**
* 處理運算符
*
* @param text
*/
private void handleOperator(String text) {
switch (operator) { // 處理各項運算 適用於JDK1.7版本的
case “+”:
resultNum += Double.parseDouble(this.result.getText());
break;
case “-“:
resultNum -= Double.parseDouble(this.result.getText());
break;
case “*”:
resultNum *= Double.parseDouble(this.result.getText());
break;
case “/”:
resultNum /= Double.parseDouble(this.result.getText());
break;
case “=”:
resultNum = Double.parseDouble(this.result.getText());
break;
}
// 將文本框的值修改為運算結果
this.result.setText(String.valueOf(resultNum));
// 將點擊的運算符放入operator保存
operator = text;
// 下一個數字第一次點擊
isFirstDigit = true;
}
public static void main(String[] args) {
new Calculator(“My Calculator”);
}
}
運行結果如下:
java中整除和浮點除什麼區別
被除數和除數都為整數即為整除,結果也為整數,如果有餘數,則忽略餘數,比如
5/2結果為2。
被除數和除數只要有一個是浮點數(小數)即為浮點除,結果為浮點數,比如
5.0/2
結果為
2.5
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/187895.html