「javaset原码」java set源码
今天给各位分享javaset原码的知识,其中也会对java set源码进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、JAVA中原码 反码 补码是什么意思?
- 2、Java 取反运算符
- 3、谁能帮我编一个能加减乘除的计算器用JAVA~~要原代码
- 4、谁有用java编写的邮件服务系统的原代码吗?
- 5、一个想了好久的关于原码反码补码的java问题,希望懂的小伙伴或者老师专家们可以帮我解惑
- 6、如何用java实现计算器运算功能?用到哪些函数?原代码怎么写呀
JAVA中原码 反码 补码是什么意思?
反码是将其2进制数每一位按位取反。
即1改为0,0改为1.
补码则不同。
正数的补码是其源码本身
负数的补码是其除符号位以外其他每一位按位取反再加一,符号位不变。
例如:
10进制数11:
源码:00001011;
反码:11110100;
补码:00001011;
十进制数-11:
源码:10001011;
反码:01110100;
补码:11110101;
Java 取反运算符
用以下代码可以实现你要求的功能:
long lang=64509;
String str1=Long.toBinaryString(lang);//将给定的数转为二进制字串
String str2=Long.toBinaryString(~lang);//将给定的数取反转为二进制字串
//将取反后的二进制串取最后的 长度与第一个串长度相等 的子串,这是我们需要的二进制串
String str=str2.substring(str2.length()-str1.length());
//将它转换为十进制整数
int i=Integer.parseInt(str, 2);
System.out.println(i);
具体理论知识如下所示:
先要理解一些概念:
在2进制中,负数是以它正值的补码形式表达
原码:一个整数,按照绝对值大小转换成的二进制数,称为原码。
比如 0000 0000 0000 0000 0000 0000 0000 0101是 5的 原码。
反码:将二进制数按位取反,所得的新二进制数称为原二进制数的反码。
取反操作指:原为1,得0;原为0,得1。(1变0; 0变1)
比如:将5的二进制表达式的每一位取反,得
1111 1111 1111 1111 1111 1111 1111 1010
称:1111 1111 1111 1111 1111 1111 1111 1010 是 0000 0000 0000 0000 0000 0000 0000 0101 的反码。
反码是相互的,所以也可称:
1111 1111 1111 1111 1111 1111 1111 1010 和 0000 0000 0000 0000 0000 0000 0000 0101 互为反码。
补码:反码加1称为补码。
也就是说,要得到一个数的补码,先得到反码,然后将反码加上1,所得数称为补码。
那么,5的补码为:
1111 1111 1111 1111 1111 1111 1111 1010 + 1 =
1111 1111 1111 1111 1111 1111 1111 1011
所以,-5 在计算机中的二进制表达为:
1111 1111 1111 1111 1111 1111 1111 1011
转换为十六进制:0xFFFFFFFB。
====================================
明白了上面的就可以理解怎么求 ~i 了
int型储存32个二进制位,~这个符号是按位取反,就是求i的反码。
即得到1111 1111 1111 1111 1111 1111 1111 1010
上面这串二进制代表一个负数,将它转换成int型过程如下:
1111 1111 1111 1111 1111 1111 1111 1010-1 =
1111 1111 1111 1111 1111 1111 1111 1001
再求反:
0000 0000 0000 0000 0000 0000 0000 0110
这个值就是5的按位取反所得到的int整数的绝对值(注意:5按位取反得到的是负数)
所以转换为int型为:6
即:int型的i=5 取反后的结果为-6
谁能帮我编一个能加减乘除的计算器用JAVA~~要原代码
/*
* NewJFrame.java
*
* Created on 31 May 2005, 03:10
*/
//package rcalculator;
import java.math.BigDecimal;
/**
*
* @author Greeceboy
*/
public class Rcalculator extends javax.swing.JFrame {
String s="";
String preNo="";
String nextNo="";
int markS=0;
boolean markE=false;
/** Creates new form NewJFrame */
public Rcalculator() {
initComponents();
}
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
// editor-fold defaultstate="collapsed" desc=" Generated Code "//GEN-BEGIN:initComponents
private void initComponents() {
yellowUnder = new javax.swing.JPanel();
greenPanel = new javax.swing.JPanel();
calBut7 = new javax.swing.JButton();
calBut4 = new javax.swing.JButton();
calBut1 = new javax.swing.JButton();
calBut0 = new javax.swing.JButton();
calHelp = new javax.swing.JButton();
bluePanel = new javax.swing.JPanel();
calBut8 = new javax.swing.JButton();
calBut5 = new javax.swing.JButton();
calBut2 = new javax.swing.JButton();
butDot = new javax.swing.JButton();
butN = new javax.swing.JButton();
magentPanel = new javax.swing.JPanel();
calBut9 = new javax.swing.JButton();
calBut6 = new javax.swing.JButton();
calBut3 = new javax.swing.JButton();
butSquare = new javax.swing.JButton();
butC = new javax.swing.JButton();
redPanel = new javax.swing.JPanel();
butAddition = new javax.swing.JButton();
butSubtraction = new javax.swing.JButton();
butMultiplication = new javax.swing.JButton();
butDivision = new javax.swing.JButton();
butEqual = new javax.swing.JButton();
pinkAbove = new javax.swing.JPanel();
textDisplay = new javax.swing.JTextField();
getContentPane().setLayout(null);
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setTitle("Greeceboy's Calculator");
setBackground(new java.awt.Color(255, 51, 255));
setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
setFont(new java.awt.Font("Comic Sans MS", 1, 14));
setMaximizedBounds(new java.awt.Rectangle(400, 350, 407, 252));
setName("Different Values");
setResizable(false);
yellowUnder.setLayout(new java.awt.FlowLayout(java.awt.FlowLayout.LEFT, 0, 0));
yellowUnder.setBackground(new java.awt.Color(255, 204, 0));
yellowUnder.setMaximumSize(new java.awt.Dimension(400, 164));
yellowUnder.setMinimumSize(new java.awt.Dimension(400, 164));
yellowUnder.setPreferredSize(new java.awt.Dimension(400, 164));
yellowUnder.setRequestFocusEnabled(false);
greenPanel.setBackground(new java.awt.Color(255, 51, 255));
greenPanel.setMaximumSize(new java.awt.Dimension(100, 164));
greenPanel.setMinimumSize(new java.awt.Dimension(100, 164));
greenPanel.setName("Different Values");
greenPanel.setPreferredSize(new java.awt.Dimension(100, 164));
calBut7.setFont(new java.awt.Font("Comic Sans MS", 0, 18));
calBut7.setForeground(new java.awt.Color(204, 0, 204));
calBut7.setText("7");
calBut7.setBorderPainted(false);
calBut7.setIconTextGap(0);
calBut7.setMargin(new java.awt.Insets(0, 0, 0, 0));
calBut7.setMaximumSize(new java.awt.Dimension(78, 25));
calBut7.setMinimumSize(new java.awt.Dimension(78, 25));
calBut7.setPreferredSize(new java.awt.Dimension(78, 25));
calBut7.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
calBut7ActionPerformed(evt);
}
});
greenPanel.add(calBut7);
calBut4.setFont(new java.awt.Font("Comic Sans MS", 0, 18));
calBut4.setForeground(new java.awt.Color(204, 0, 204));
calBut4.setText("4");
calBut4.setBorder(null);
calBut4.setBorderPainted(false);
calBut4.setMaximumSize(new java.awt.Dimension(78, 25));
calBut4.setMinimumSize(new java.awt.Dimension(78, 25));
calBut4.setPreferredSize(new java.awt.Dimension(78, 25));
calBut4.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
calBut4ActionPerformed(evt);
}
});
greenPanel.add(calBut4);
calBut1.setFont(new java.awt.Font("Comic Sans MS", 0, 18));
calBut1.setForeground(new java.awt.Color(204, 0, 204));
calBut1.setText("1");
calBut1.setBorder(null);
calBut1.setBorderPainted(false);
calBut1.setMaximumSize(new java.awt.Dimension(78, 25));
calBut1.setMinimumSize(new java.awt.Dimension(78, 25));
calBut1.setPreferredSize(new java.awt.Dimension(78, 25));
calBut1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
calBut1ActionPerformed(evt);
}
});
greenPanel.add(calBut1);
calBut0.setFont(new java.awt.Font("Comic Sans MS", 0, 18));
calBut0.setForeground(new java.awt.Color(204, 0, 204));
calBut0.setText("0");
calBut0.setBorder(null);
calBut0.setBorderPainted(false);
calBut0.setMaximumSize(new java.awt.Dimension(78, 25));
calBut0.setMinimumSize(new java.awt.Dimension(78, 25));
calBut0.setPreferredSize(new java.awt.Dimension(78, 25));
calBut0.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
calBut0ActionPerformed(evt);
}
});
greenPanel.add(calBut0);
calHelp.setFont(new java.awt.Font("Comic Sans MS", 0, 18));
calHelp.setForeground(new java.awt.Color(204, 0, 204));
calHelp.setText("Help");
calHelp.setBorder(null);
calHelp.setBorderPainted(false);
calHelp.setMaximumSize(new java.awt.Dimension(78, 25));
calHelp.setMinimumSize(new java.awt.Dimension(78, 25));
calHelp.setPreferredSize(new java.awt.Dimension(78, 25));
calHelp.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
calHelpActionPerformed(evt);
}
});
greenPanel.add(calHelp);
yellowUnder.add(greenPanel);
bluePanel.setBackground(new java.awt.Color(255, 51, 255));
bluePanel.setMaximumSize(new java.awt.Dimension(100, 164));
bluePanel.setMinimumSize(new java.awt.Dimension(100, 164));
bluePanel.setName("Different Values");
bluePanel.setPreferredSize(new java.awt.Dimension(100, 164));
calBut8.setFont(new java.awt.Font("Comic Sans MS", 0, 18));
calBut8.setForeground(new java.awt.Color(204, 0, 204));
calBut8.setText("8");
calBut8.setBorder(null);
calBut8.setBorderPainted(false);
calBut8.setMaximumSize(new java.awt.Dimension(78, 25));
calBut8.setMinimumSize(new java.awt.Dimension(78, 25));
calBut8.setPreferredSize(new java.awt.Dimension(78, 25));
calBut8.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
calBut8ActionPerformed(evt);
}
});
bluePanel.add(calBut8);
calBut5.setFont(new java.awt.Font("Comic Sans MS", 0, 18));
calBut5.setForeground(new java.awt.Color(204, 0, 204));
calBut5.setText("5");
calBut5.setBorder(null);
calBut5.setBorderPainted(false);
calBut5.setMaximumSize(new java.awt.Dimension(78, 25));
calBut5.setMinimumSize(new java.awt.Dimension(78, 25));
calBut5.setPreferredSize(new java.awt.Dimension(78, 25));
calBut5.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
calBut5ActionPerformed(evt);
}
});
bluePanel.add(calBut5);
calBut2.setFont(new java.awt.Font("Comic Sans MS", 0, 18));
calBut2.setForeground(new java.awt.Color(204, 0, 204));
calBut2.setText("2");
calBut2.setBorder(null);
calBut2.setBorderPainted(false);
calBut2.setMaximumSize(new java.awt.Dimension(78, 25));
calBut2.setMinimumSize(new java.awt.Dimension(78, 25));
calBut2.setPreferredSize(new java.awt.Dimension(78, 25));
calBut2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
calBut2ActionPerformed(evt);
}
});
bluePanel.add(calBut2);
butDot.setFont(new java.awt.Font("Comic Sans MS", 0, 18));
butDot.setForeground(new java.awt.Color(204, 0, 204));
butDot.setText(".");
butDot.setBorder(null);
butDot.setBorderPainted(false);
butDot.setMaximumSize(new java.awt.Dimension(78, 25));
butDot.setMinimumSize(new java.awt.Dimension(78, 25));
butDot.setPreferredSize(new java.awt.Dimension(78, 25));
butDot.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
butDotActionPerformed(evt);
}
});
bluePanel.add(butDot);
butN.setFont(new java.awt.Font("Comic Sans MS", 0, 18));
butN.setForeground(new java.awt.Color(204, 0, 204));
butN.setText("n!");
butN.setBorder(null);
butN.setBorderPainted(false);
butN.setMaximumSize(new java.awt.Dimension(78, 25));
butN.setMinimumSize(new java.awt.Dimension(78, 25));
butN.setPreferredSize(new java.awt.Dimension(78, 25));
butN.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
butNActionPerformed(evt);
}
});
bluePanel.add(butN);
yellowUnder.add(bluePanel);
magentPanel.setBackground(new java.awt.Color(255, 51, 255));
magentPanel.setMaximumSize(new java.awt.Dimension(100, 164));
magentPanel.setMinimumSize(new java.awt.Dimension(100, 164));
magentPanel.setName("Different Values");
magentPanel.setPreferredSize(new java.awt.Dimension(100, 164));
calBut9.setFont(new java.awt.Font("Comic Sans MS", 0, 18));
calBut9.setForeground(new java.awt.Color(204, 0, 204));
calBut9.setText("9");
calBut9.setBorder(null);
calBut9.setBorderPainted(false);
calBut9.setMaximumSize(new java.awt.Dimension(78, 25));
calBut9.setMinimumSize(new java.awt.Dimension(78, 25));
calBut9.setPreferredSize(new java.awt.Dimension(78, 25));
calBut9.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
calBut9ActionPerformed(evt);
}
});
magentPanel.add(calBut9);
calBut6.setFont(new java.awt.Font("Comic Sans MS", 0, 18));
calBut6.setForeground(new java.awt.Color(204, 0, 204));
calBut6.setText("6");
calBut6.setBorder(null);
calBut6.setBorderPainted(false);
calBut6.setMaximumSize(new java.awt.Dimension(78, 25));
calBut6.setMinimumSize(new java.awt.Dimension(78, 25));
calBut6.setPreferredSize(new java.awt.Dimension(78, 25));
calBut6.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
calBut6ActionPerformed(evt);
}
});
magentPanel.add(calBut6);
calBut3.setFont(new java.awt.Font("Comic Sans MS", 0, 18));
calBut3.setForeground(new java.awt.Color(204, 0, 204));
calBut3.setText("3");
calBut3.setBorder(null);
calBut3.setBorderPainted(false);
calBut3.setMaximumSize(new java.awt.Dimension(78, 25));
calBut3.setMinimumSize(new java.awt.Dimension(78, 25));
calBut3.setPreferredSize(new java.awt.Dimension(78, 25));
calBut3.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
calBut3ActionPerformed(evt);
}
});
magentPanel.add(calBut3);
butSquare.setFont(new java.awt.Font("Comic Sans MS", 0, 18));
butSquare.setForeground(new java.awt.Color(204, 0, 204));
butSquare.setText("Square");
butSquare.setBorder(null);
butSquare.setBorderPainted(false);
butSquare.setMaximumSize(new java.awt.Dimension(78, 25));
butSquare.setMinimumSize(new java.awt.Dimension(78, 25));
butSquare.setPreferredSize(new java.awt.Dimension(78, 25));
butSquare.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
butSquareActionPerformed(evt);
}
});
magentPanel.add(butSquare);
butC.setFont(new java.awt.Font("Comic Sans MS", 0, 18));
butC.setForeground(new java.awt.Color(204, 0, 204));
butC.setText("C");
butC.setBorder(null);
butC.setBorderPainted(false);
butC.setMaximumSize(new java.awt.Dimension(78, 25));
butC.setMinimumSize(new java.awt.Dimension(78, 25));
butC.setPreferredSize(new java.awt.Dimension(78, 25));
butC.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
butCActionPerformed(evt);
}
});
magentPanel.add(butC);
yellowUnder.add(magentPanel);
redPanel.setBackground(new java.awt.Color(255, 51, 255));
redPanel.setMaximumSize(new java.awt.Dimension(100, 164));
redPanel.setMinimumSize(new java.awt.Dimension(100, 164));
redPanel.setName("Different Values");
redPanel.setPreferredSize(new java.awt.Dimension(100, 164));
butAddition.setFont(new java.awt.Font("Comic Sans MS", 0, 18));
butAddition.setForeground(new java.awt.Color(204, 0, 204));
butAddition.setText("+");
butAddition.setBorder(null);
butAddition.setBorderPainted(false);
butAddition.setMaximumSize(new java.awt.Dimension(78, 25));
butAddition.setMinimumSize(new java.awt.Dimension(78, 25));
butAddition.setPreferredSize(new java.awt.Dimension(78, 25));
butAddition.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
butAdditionActionPerformed(evt);
}
});
redPanel.add(butAddition);
butSubtraction.setFont(new java.awt.Font("Comic Sans MS", 0, 18));
butSubtraction.setForeground(new java.awt.Color(204, 0, 204));
butSubtraction.setText("-");
butSubtraction.setBorder(null);
butSubtraction.setBorderPainted(false);
butSubtraction.setMaximumSize(new java.awt.Dimension(78, 25));
butSubtraction.setMinimumSize(new java.awt.Dimension(78, 25));
butSubtraction.setPreferredSize(new java.awt.Dimension(78, 25));
butSubtraction.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
butSubtractionActionPerformed(evt);
}
});
redPanel.add(butSubtraction);
butMultiplication.setFont(new java.awt.Font("Comic Sans MS", 0, 18));
butMultiplication.setForeground(new java.awt.Color(204, 0, 204));
butMultiplication.setText("*");
butMultiplication.setBorder(null);
butMultiplication.setBorderPainted(false);
butMultiplication.setMaximumSize(new java.awt.Dimension(78, 25));
butMultiplication.setMinimumSize(new java.awt.Dimension(78, 25));
butMultiplication.setPreferredSize(new java.awt.Dimension(78, 25));
butMultiplication.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
butMultiplicationActionPerformed(evt);
}
});
redPanel.add(butMultiplication);
butDivision.setFont(new java.awt.Font("Comic Sans MS", 0, 18));
butDivision.setForeground(new java.awt.Color(204, 0, 204));
butDivision.setText("/");
butDivision.setBorder(null);
butDivision.setBorderPainted(false);
butDivision.setMaximumSize(new java.awt.Dimension(78, 25));
butDivision.setMinimumSize(new java.awt.Dimension(78, 25));
butDivision.setPreferredSize(new java.awt.Dimension(78, 25));
butDivision.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
butDivisionActionPerformed(evt);
}
});
redPanel.add(butDivision);
butEqual.setFont(new java.awt.Font("Comic Sans MS", 0, 18));
butEqual.setForeground(new java.awt.Color(204, 0, 204));
butEqual.setText("=");
butEqual.setBorder(null);
butEqual.setBorderPainted(false);
butEqual.setMaximumSize(new java.awt.Dimension(78, 25));
butEqual.setMinimumSize(new java.awt.Dimension(78, 25));
butEqual.setPreferredSize(new java.awt.Dimension(78, 25));
butEqual.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
butEqualActionPerformed(evt);
}
});
redPanel.add(butEqual);
yellowUnder.add(redPanel);
getContentPane().add(yellowUnder);
yellowUnder.setBounds(0, 50, 400, 164);
pinkAbove.setLayout(new java.awt.FlowLayout(java.awt.FlowLayout.CENTER, 10, 10));
pinkAbove.setBackground(new java.awt.Color(255, 51, 255));
pinkAbove.setMaximumSize(new java.awt.Dimension(400, 50));
pinkAbove.setMinimumSize(new java.awt.Dimension(400, 50));
pinkAbove.setName("above");
pinkAbove.setNextFocusableComponent(yellowUnder);
pinkAbove.setPreferredSize(new java.awt.Dimension(400, 50));
textDisplay.setBackground(new java.awt.Color(255, 255, 255));
textDisplay.setEditable(false);
textDisplay.setFont(new java.awt.Font("Batang", 1, 16));
textDisplay.setForeground(new java.awt.Color(153, 0, 153));
textDisplay.setHorizontalAlignment(javax.swing.JTextField.RIGHT);
textDisplay.setText("0.");
textDisplay.setMaximumSize(new java.awt.Dimension(380, 30));
textDisplay.setMinimumSize(new java.awt.Dimension(380, 30));
textDisplay.setPreferredSize(new java.awt.Dimension(380, 30));
textDisplay.setSelectionColor(new java.awt.Color(255, 204, 255));
pinkAbove.add(textDisplay);
getContentPane(
谁有用java编写的邮件服务系统的原代码吗?
//重新编辑了,你要做的就只要改下面三个地方:
//a需要你的163邮箱帐号(仅@符号前面的)
//b需要你的163邮箱密码
//c要发送的地址
//并且下载javamail和JAF两个包,只要取其中的mail.jar和activaction.jar加入到库里面
//两个包到java.sun.com官方网站去搜,绝对有
//如果还不能发送尽管往我的邮箱塞垃圾 lihong.1982@163.com
//已经过我多次测试,代码很少,当然你也可以更改邮件服务器等
package mymail;
import java.io.*;
import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;
class PopupAuthenticator extends Authenticator {
public static final String mailuser="需要你的163邮箱帐号(仅@符号前面的)";
public static final String password="需要你的163邮箱密码";
public PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(mailuser,password);
}
}
public class Class1{
public static void main(String args[]) throws MessagingException, UnsupportedEncodingException{
Properties props = new Properties();
props.put("mail.smtp.host","smtp.163.com");
props.put("mail.smtp.auth","true");
PopupAuthenticator auth = new PopupAuthenticator();
Session session = Session.getInstance(props, auth);
MimeMessage message = new MimeMessage(session);
Address addressFrom = new InternetAddress(PopupAuthenticator.mailuser+"@163.com", "George Bush");
Address addressTo = new InternetAddress("要发送的地址", "George Bush");
message.setText("邮件发送成功");
message.setSubject("Javamal最终测试");
message.setFrom(addressFrom);
message.addRecipient(Message.RecipientType.TO,addressTo);
message.saveChanges();
Transport transport = session.getTransport("smtp");
transport.connect("smtp.163.com", PopupAuthenticator.mailuser,PopupAuthenticator.password);
transport.send(message);
transport.close();
}
}
一个想了好久的关于原码反码补码的java问题,希望懂的小伙伴或者老师专家们可以帮我解惑
1 011-0101取反 1100-1010
求补码:1100-1010+1=1100-1011
明显是截取的是负数的补码形式,计算前先还原
如何用java实现计算器运算功能?用到哪些函数?原代码怎么写呀
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
class Counter2 extends WindowAdapter
{
static JFrame f=new JFrame("¼ÆËãÆ÷");
static JTextField text1=new JTextField("0.");
static String source="";
static String cal="";
static String object="";
static boolean flag=false;
static boolean flag1=true;
static boolean flag2=false;
public void init()
{
try
{
Container c=f.getContentPane();
JPanel pan1=new JPanel();
JButton b1=new JButton("1");
JButton b2=new JButton("2");
JButton b3=new JButton("3");
JButton b4=new JButton("4");
JButton b5=new JButton("5");
JButton b6=new JButton("6");
JButton b7=new JButton("7");
JButton b8=new JButton("8");
JButton b9=new JButton("9");
JButton b0=new JButton("0");
JButton b11=new JButton("+");
JButton b12=new JButton("-");
JButton b13=new JButton("*");
JButton b14=new JButton("/");
JButton b15=new JButton(".");
JButton b16=new JButton("=");
JButton bclar=new JButton("ÇåÁã");
text1.setHorizontalAlignment(JTextField.RIGHT);
c.add(text1,"North");
c.add(pan1);
A aa=new A();
Result re=new Result();
Opertion op=new Opertion();
Clar cl=new Clar();
b1.addActionListener(aa);
b2.addActionListener(aa);
b3.addActionListener(aa);
b4.addActionListener(aa);
b5.addActionListener(aa);
b6.addActionListener(aa);
b7.addActionListener(aa);
b8.addActionListener(aa);
b9.addActionListener(aa);
b0.addActionListener(aa);
b11.addActionListener(op);
b12.addActionListener(op);
b13.addActionListener(op);
b14.addActionListener(op);
b16.addActionListener(re);
b15.addActionListener(aa);
bclar.addActionListener(cl);
pan1.add(b1);
pan1.add(b2);
pan1.add(b3);
pan1.add(b11);
pan1.add(b4);
pan1.add(b5);
pan1.add(b6);
pan1.add(b12);
pan1.add(b7);
pan1.add(b8);
pan1.add(b9);
pan1.add(b13);
pan1.add(b0);
pan1.add(b15);
pan1.add(b16);
pan1.add(b14);
pan1.add(bclar);
f.setSize(200,220);
f.setVisible(true);
}
catch(Exception e)
{
System.out.println(e.getMessage());
}
}
class A implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
String a=text1.getText();
String s=e.getActionCommand();
if(a.equals("0.")||a.equals("+")||a.equals("-")||a.equals("*")||a.equals("/"))
text1.setText(s);
else {
if(flag2)
{
text1.setText(s);
flag2=false;
}
else
text1.setText(a+s);
}
}
}
class Opertion implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
cal=e.getActionCommand();
if(flag1==true)
source=text1.getText();
text1.setText(cal);
flag1=false;
flag=true;
}
}
class Result implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
double num1;
num1=Double.parseDouble(source);
object=text1.getText();
double num2;
num2=Double.parseDouble(object);
double result=0;
if(cal.equals("+"))
result=num1+num2;
if(cal.equals("-"))
result=num1-num2;
if(cal.equals("*"))
result=num1*num2;
if(cal.equals("/"))
if(num2==0)
text1.setText("³ýÊý²»ÄÜΪ0");
else
result=num1/num2;
String s1=Double.toString(result);
text1.setText(s1);
flag1=true;
flag2=true;
}
}
class Clar implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
text1.setText("0.");
}
}
public static void main(String[] args)
{
Counter2 count=new Counter2();
count.init();
}
public void windowClosing(WindowEvent e){
System.exit(1);
}
public void windowOpened(WindowEvent e){}
public void windowIconified(WindowEvent e){}
public void windowDeiconified(WindowEvent e){}
public void windowClosed(WindowEvent e){}
public void windowActivated(WindowEvent e){}
public void windowDeactivated(WindowEvent e){}
}
javaset原码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java set源码、javaset原码的信息别忘了在本站进行查找喔。