
/
/
import javaawt;
import javaawtevent;
import javaxswing;
import javautilVector;
public class Tuo
{
String str1="0"; //运算数1 初值一定为0 为了程序的安全
String str2="0"; //运算数2
String fh="+"; //运算符
String jg="";//结果
//状态开关 重要
int k1=1;//开关1 用于选择输入方向 将要写入str2或 str2
int k2=1;//开关2 符号键 次数 k2>1说明进行的是2+3-9+8 这样的多符号运算
int k3=1;//开关3 str1 是否可以被清0 ==1时可以 !=1时不能被清0
int k4=1;//开关4 str2 同上
int k5=1;//开关5 控制小数点可否被录入 ==1时可以 !=1 输入的小数点被丢掉
JButton jicunqi; //寄存器 记录 是否连续按下符号键
Vector vt=new Vector(20,10);
JFrame frame=new JFrame("sunshine---计算器");
JTextField jg_TextField=new JTextField(jg,20);//20列
JButton clear_Button=new JButton("清除");
JButton button0=new JButton("0");
JButton button1=new JButton("1");
JButton button2=new JButton("2");
JButton button3=new JButton("3");
JButton button4=new JButton("4");
JButton button5=new JButton("5");
JButton button6=new JButton("6");
JButton button7=new JButton("7");
JButton button8=new JButton("8");
JButton button9=new JButton("9");
JButton button_Dian=new JButton("");
JButton button_jia=new JButton("+");
JButton button_jian=new JButton("-");
JButton button_cheng=new JButton("");
JButton button_chu=new JButton("/");
JButton button_dy=new JButton("=");
////////////////////////////////////////////////////////////////////////
public static void main(String[] args)
{
Tuo tuo=new Tuo();
}
/////////////////////////////////////////////////////////////////////////
Tuo()
{
button0setMnemonic(KeyEventVK_0);//等效键
//其它 等效键 略,
jg_TextFieldsetHorizontalAlignment(JTextFieldRIGHT );//文本框 右对齐
JPanel pan=new JPanel();
pansetLayout(new GridLayout(4,4,5,5));//四行四列 边距为5像素
panadd(button7);
panadd(button8);
panadd(button9);
panadd(button_chu);
panadd(button4);
panadd(button5);
panadd(button6);
panadd(button_cheng);
panadd(button1);
panadd(button2);
panadd(button3);
panadd(button_jian);
panadd(button0);
panadd(button_Dian);
panadd(button_dy);
panadd(button_jia);
pansetBorder(BorderFactorycreateEmptyBorder(5,5,5,5));//pan对象的边距
JPanel pan2=new JPanel();
pan2add(jg_TextField);
JPanel pan3=new JPanel(); //为什么要 多此一句呢? 因为我不会设置 按钮的大小
pan3setLayout(new FlowLayout());
pan3add(clear_Button);
//clear_ButtonsetSize(10,10);//设置清零按钮的大小 吗的 不好使 !!
framesetLocation(300, 200); //主窗口 出现在位置
framesetResizable(false); //不能调大小
framegetContentPane()setLayout(new BorderLayout());
framegetContentPane()add(pan2,BorderLayoutNORTH);
framegetContentPane()add(pan,BorderLayoutCENTER);
framegetContentPane()add(pan3,BorderLayoutSOUTH);
framepack();
framesetVisible(true);
//以上是 控件 和 布局
//下面是事件处理 程 序
//--------------- 数 字 键 ----------------
class JianTing implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
String ss=((JButton)egetSource())getText();
jicunqi=(JButton)egetSource();
vtadd(jicunqi);
if (k1==1)
{
if(k3==1)
{
str1="";
k5=1;//还原开关k5状态
}
str1=str1+ss;
//k2=1;
k3=k3+1;
//Systemoutprintln(str1);
jg_TextFieldsetText(str1);//显示
}
else if(k1==2)
{
if (k4==1)
{
str2="";
k5=1; //还原开关k5状态
}
str2=str2+ss;
//k2=2;
k4=k4+1;
///////////////测试////////////////
jg_TextFieldsetText(str2);
}
}
}
//--------符 号-----------
class JianTing_fh implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
String ss2=((JButton)egetSource())getText();
jicunqi=(JButton)egetSource();
vtadd(jicunqi);
if(k2==1)
{
k1=2;//开关 k1 为1时,向数1写 为2时,向数2写
k5=1;
fh=ss2;
k2=k2+1;//按符号键的次数
}
else
{
int a=vtsize();
JButton c=(JButton)vtget(a-2);
if(!(cgetText()equals("+"))&&!(cgetText()equals("-"))&&!(cgetText()equals(""))&&!(cgetText()equals("/")))
//if(!(vtget(a-2)getText()equals("-"))||!(vtget(a-2)getText()equals("+"))||!(vtget(a-2)getText()equals(""))||!(vtget(a-2)getText()equals("/")))
{ yuns();
str1=jg;
k1=2;//开关 k1 为1时,向数1写 为2时,向数2写
k5=1;
k4=1;
fh=ss2;
} k2=k2+1;
}
}
}
//--------清除-------
class JianTing_clear implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
jicunqi=(JButton)egetSource();
vtadd(jicunqi);
k5=1;
k2=1;
k1=1;
k3=1;
k4=1;
str1="0";
str2="0";
fh="";
jg="";
jg_TextFieldsetText(jg);
vtclear();
}
}
//----------------等 于 ---------------------
class JianTing_dy implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
jicunqi=(JButton)egetSource();
vtadd(jicunqi);
yuns();
k1=1; //还原开关k1状态
//str1=jg;
k2=1;
k3=1;//还原开关k3状态
k4=1; //还原开关k4状态
str1=jg; //为7+5=12 +5=17 这种计算做准备
}
}
//----------------小数点 ---------------------
class JianTing_xiaos implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
jicunqi=(JButton)egetSource();
vtadd(jicunqi);
if(k5==1)
{
String ss2=((JButton)egetSource())getText();
if (k1==1)
{
if(k3==1)
{
str1="";
k5=1; //还原开关k5状态
}
str1=str1+ss2;
//k2=1;
k3=k3+1;
//Systemoutprintln(str1);
jg_TextFieldsetText(str1);//显示
}
else if(k1==2)
{
if (k4==1)
{
str2="";
k5=1; //还原开关k5状态
}
str2=str2+ss2;
//k2=2;
k4=k4+1;
///////////////测试////////////////
jg_TextFieldsetText(str2);
}
}
k5=k5+1; //
}
}
//注册 监听器
JianTing_dy jt_dy=new JianTing_dy();
JianTing jt= new JianTing();//临听数字键
JianTing_fh jt_fh= new JianTing_fh();//临 听符 号键
JianTing_clear jt_c=new JianTing_clear(); //清除键
JianTing_xiaos jt_xs=new JianTing_xiaos();// 小数点 键
button7addActionListener(jt);
button8addActionListener(jt);
button9addActionListener(jt);
button_chuaddActionListener(jt_fh);
button4addActionListener(jt);
button5addActionListener(jt);
button6addActionListener(jt);
button_chengaddActionListener(jt_fh);
button1addActionListener(jt);
button2addActionListener(jt);
button3addActionListener(jt);
button_jianaddActionListener(jt_fh);
button0addActionListener(jt);
button_DianaddActionListener(jt_xs);
button_dyaddActionListener(jt_dy);
button_jiaaddActionListener(jt_fh);
clear_ButtonaddActionListener(jt_c);
//关闭事件处理程序
frameaddWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
Systemexit(0);
}
});
}
//---------------计 算------------------
public void yuns()
{
double a2;//运算数1
double b2;//运算数2
String c=fh;// 运算符
double jg2=0 ;//结果
if (cequals(""))
{
//Systemoutprintln("请输入运算符");
jg_TextFieldsetText("请输入运算符");
}
else
{
Systemoutprintln("str1:"+str1);//调试时 使 用
Systemoutprintln("str2:"+str2);//调试时 使 用
Systemoutprintln("运算符:"+fh);//调试时 使 用
if (str1equals("")) //字符串 "" 转换成double型数据时 会出错 所以手工转
str1="00";
if (str2equals(""))
str2="00";
a2=DoublevalueOf(str1)doubleValue();
b2=DoublevalueOf(str2)doubleValue();
Systemoutprintln("double型的a2:"+a2); //调试时 使 用
Systemoutprintln("double型的b2:"+b2); //调试时 使 用
if (cequals("+"))
{
jg2=a2+b2;
}
if (cequals("-"))
{
jg2=a2-b2;
}
if (cequals(""))
{
jg2=a2b2;
}
if (cequals("/"))
{
if(b2==0)
{
jg2=0;//0000000000000 by 0 cu!
}
else
{
jg2=a2/b2;
}
}
Systemoutprintln("double型a2"+fh+"b2结果:"+jg2);
Systemoutprintln();
jg=((new Double(jg2))toString());
jg_TextFieldsetText(jg);
}
}
}
Util是utiliy的缩写,是一个多功能、基于工具的包。
javautil是包含集合框架、遗留的 collection 类、事件模型、日期和时间设施、国际化和各种实用工具类(字符串标记生成器、随机数生成器和位数组、日期Date类、堆栈Stack类、向量Vector类等)。集合类、时间处理模式、日期时间工具等各类常用工具包。
Java的实用工具类库javautil包。在这个包中,Java提供了一些实用的方法和数据结构。例如,Java提供日期(Data)类、日历(Calendar)类来产生和获取日期及时间,提供随机数(Random)类产生各种类型的随机数,还提供了堆栈(Stack)、向量(Vector) 、位集合(Bitset)以及哈希表(Hashtable)等类来表示相应的数据结构。
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程 。
Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。
扩展资料
1、JDK(Java Development Kit)称为Java开发包或Java开发工具,是一个编写Java的Applet小程序和应用程序的程序开发环境。JDK是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一些Java工具和Java的核心类库(Java API)。
2、不论什么Java应用服务器实质都是内置了某个版本的JDK。主流的JDK是Sun公司发布的JDK,除了Sun之外,还有很多公司和组织都开发了自己的JDK,例如,IBM公司开发的JDK,BEA公司的Jrocket,还有GNU组织开发的JDK。
3、另外,可以把Java API类库中的Java SE API子集和Java虚拟机这两部分统称为JRE(JAVA Runtime Environment),JRE是支持Java程序运行的标准环境 。
4、JRE是个运行环境,JDK是个开发环境。因此写Java程序的时候需要JDK,而运行Java程序的时候就需要JRE。而JDK里面已经包含了JRE,因此只要安装了JDK,就可以编辑Java程序,也可以正常运行Java程序。但由于JDK包含了许多与运行无关的内容,占用的空间较大,因此运行普通的Java程序无须安装JDK,而只需要安装JRE即可。
参考资料:
如何把wed分享不是小程序:变通的方法,就是将小程序转成带有小程序码的,将分享到朋友圈。好友通过长按识别上的小程序码,直接进入小程序具体的页面,包括首页。大家可以打开软件开发记这个小程序,随便找一篇文章使用下面的海报功能,体验这个过程。
if (!FileUpload1Exists(savePath))
{
ResponseWrite("对不起!文件不存在!!");
return;
}
这里的FileUpload1,是不是应该写成FileExists,FileUpload1看上去像是控件名称,而对服务器上的文件检查应用的File类。请核实。而FileUpload控件只是用来上传文件的,并不可能对已经存在于服务器上的文件进行访问。
下载代码,可以参考如下:
/// <summary>
/// 下载文件
/// </summary>
/// <param name="path">文件路径</param>
public void downLoad(string path)
{
try
{
string filePath = path;
int temp = filePathLastIndexOf("/") + 1;
string fileName = filePathSubstring(temp, filePathLength - temp);
//FileStream fileStream = new FileStream(ServerMapPath(filePath), FileModeOpen, FileAccessRead, FileShareRead);
FileStream fileStream = new FileStream(filePath, FileModeOpen, FileAccessRead, FileShareRead);
long fileSize = fileStreamLength;
ContextResponseContentType = "application/octet-stream";
ContextResponseAddHeader("Content-Disposition", "attachment; filename=\"" + >
有这种桌面小程序的,你搜下应该好找的。
我先给你发个VBS脚本程序,等有时间了,写个好点的。
'脚本开始
Set objShell = WScriptCreateObject("WScriptShell")
j = 120 '工作时间(分钟)
n = 10 '休息时间(分钟)
alertText = "休息一下,听听音乐" & Chr(10) & "活动一下脖子,腰部。" & Chr(10) & "生命在于运动!!" '提醒内容,Chr(10)为换行符
alertText2 = n&"分钟休息时间到了,继续工作!"
strSoundFile = "D:\Music\MyMusicwpl" '自动播放列表地址
strCommand = "wmplayerexe /prefetch:1 /Task MediaLibrary " & Chr(34) & strSoundFile & Chr(34) '播放音乐
strCommand2 = "taskkill /im wmplayerexe" '关闭音乐程序
For i = 1 To 12 '12为提醒的次数
WScriptSleep(1000 60 j)
MsgBox alertText, 64
objShellRun strCommand, 1, False
WScriptSleep(1000 60 n)
objShellRun strCommand2, 0, True
MsgBox alertText2, 64
Next
使用方法:
1 将代码保存为:Ringvbs (文件名可自定)
2 将Ringvbs移动到程序启动组,这样可以随WINDOWS自动启动了(位置是:开始--程序--启动,XP的启动组位置是:C:\Documents and Settings\你的用户名\「开始」菜单\程序\启动\)
3 我这里使用的是Window自带的Media Player播放音乐,所以先打开您的Media Player,将“正在播放列表”另存到D:\Music\MyMusicwpl(保存路径可以自定,但要在下在的代码中修改strSoundFile的路径),以后你只要打开电脑就可以自动提醒了!
注意:如果你使用的是Winamp播放音乐,则必有把路径改为Winamp的播放列表文件地址,以及strCommand和strCommand2的值如:
strCommand = "C:\Program Files\Winamp\winampexe /prefetch:1 /Task MediaLibrary " & Chr(34) & strSoundFile & Chr(34) '播放音乐
strCommand2 = "taskkill /im winampexe" '关闭音乐程序
可以
if (uaindexof('MicroMessage') == -1) {
//说明不在微信中
// 走不在小程序的逻辑
} else {
wxminiProgramgetEnv(function(res) {
if (resminiProgram) {
// 走在小程序的逻辑
} else {
// 走不在小程序的逻辑
}
})
}
import javaioIOException;
import javaioRandomAccessFile;
public class TestMain {
public static void main(String[] args) {
//原文件路径
String path1 = "F:/1txt";
//新文件路径
String path2 = "F:/2txt";
RandomAccessFile raf1 = null;
RandomAccessFile raf2 = null;
String line = null;
try {
raf1 = new RandomAccessFile(path1, "r");
raf2 = new RandomAccessFile(path2, "rw");
while ((line = raf1readLine()) != null) {
int start = lineindexOf("EMAIL");
int end = lineindexOf("OU=");
String a = linesubstring(start, end);
String b = areplace("ADDRESS", "");
line = linereplace(a, "");
line = b + line;
raf2write(linegetBytes());
raf2write('\n');
}
} catch (Exception e) {
eprintStackTrace();
} finally {
try {
raf1close();
raf2close();
} catch (IOException e) {
eprintStackTrace();
}
}
}
}
以上就是关于求java简单计算器源代码全部的内容,包括:求java简单计算器源代码、想问一下:java.util中,util是什么意思谢谢、如何把wed分享不是小程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)