「java小程序实例」java实用小程序
本篇文章给大家谈谈java小程序实例,以及java实用小程序对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、用Java编写一个绘制图形的小程序
- 2、用JAVA编写一个小程序 比如拼图游戏 推箱子 猜数字 。。。。。。请附详细注释 因为要发表 谢谢大家!
- 3、编写一个JAVA小程序,从键盘输入3个数,求这三个数的最大值&最小值. (显示要用对话框)
- 4、用Java写个小程序:创建银行账号类SavingAccount,利用静态变量存储年利率,利用私有实例变量存储存款额,
- 5、用JAVA制作一个小程序,计算两个数的加减乘除,用Applet实现
- 6、java一个简单小程序,求高手帮忙编写,万分感谢
用Java编写一个绘制图形的小程序
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import javax.swing.*;
//不规则图形的绘制
public class IrregularShapeDemo extends JFrame {
GeneralPath gPath= new GeneralPath(); //GeneralPath对象实例
Point aPoint;
//构造函数
public IrregularShapeDemo() {
super("不规则图形的绘制"); //调用父类构造函数
enableEvents(AWTEvent.MOUSE_EVENT_MASK|AWTEvent.MOUSE_MOTION_EVENT_MASK); //允许事件
setSize(300, 200); //设置窗口尺寸
setVisible(true); //设置窗口可视
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭窗口时退出程序
}
public void paint(Graphics g) { //重载窗口组件的paint()方法
Graphics2D g2D = (Graphics2D)g; //获取图形环境
g2D.draw(gPath); //绘制路径
}
public static void main(String[] args) {
new IrregularShapeDemo();
}
protected void processMouseEvent(MouseEvent e) { //鼠标事件处理
if(e.getID() == MouseEvent.MOUSE_PRESSED) {
aPoint = e.getPoint(); //得到当前鼠标点
gPath = new GeneralPath(); //重新实例化GeneralPath对象
gPath.moveTo(aPoint.x,aPoint.y); //设置路径点
}
}
protected void processMouseMotionEvent(MouseEvent e) { //鼠标运动事件处理
if(e.getID() == MouseEvent.MOUSE_DRAGGED) {
aPoint = e.getPoint(); //得到当前鼠标点
gPath.lineTo(aPoint.x, aPoint.y); //设置路径
gPath.moveTo(aPoint.x, aPoint.y);
repaint(); //重绘组件
}
}
}
用JAVA编写一个小程序 比如拼图游戏 推箱子 猜数字 。。。。。。请附详细注释 因为要发表 谢谢大家!
我写的一个猜数字游戏,希望对你有用,代码如下:
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
public class GuessNumber {
static int trys, A, B;
static String r, t;
public static int[] MakeGuessNumber(){//随机生成一个无重复数字的四位数
Random r = new Random();
int guess[] = new int[4];
for(int i=0; i4; i++){
guess[i] = r.nextInt(10);
for(int j=i-1; j=0; j--){
if(guess[i]==guess[j]){
i--;
break;}
}
}
return guess;
}
public static String getRundom(){//将此四位数转化为字符串
int guess[]=MakeGuessNumber();
return ""+guess[0]+guess[1]+guess[2]+guess[3];
}
public static void messageDialog(Object o){
JOptionPane.showMessageDialog(null, o);
}
public static void guessNumber(){//主要算法实现部分
r=getRundom();
//System.out.println(r);
JFrame jf=new JFrame();
JButton b1=new JButton("新游戏");
JLabel l1=new JLabel("输入:");
final JTextField jtf=new JTextField(10);
JButton b2=new JButton("提交");
final JTextArea jta=new JTextArea(10,10);
jta.append(" "+"Guess"+" "+"Result"+"\n");
JScrollPane scrollPane=new JScrollPane(jta);
JPanel jp1=new JPanel();
jp1.add(l1);
jp1.add(jtf);
jp1.add(b2);
jf.add(b1,BorderLayout.NORTH);
jf.add(jp1,BorderLayout.CENTER);
jf.add(scrollPane,BorderLayout.SOUTH);
b1.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
trys=0;
A=0;
B=0;
jta.setText(" "+"Guess"+" "+"Result"+"\n");
jtf.setText("");
r=getRundom();
//System.out.println(r);
}
});
b2.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
t=jtf.getText();
A=0;
B=0;
if(t.length()!=4||t.substring(0, 1).equals(t.substring(1, 2))
||t.substring(0, 1).equals(t.substring(2, 3))
||t.substring(0, 1).equals(t.substring(3, 4))
||t.substring(1, 2).equals(t.substring(2, 3))
||t.substring(1, 2).equals(t.substring(3, 4))
||t.substring(2, 3).equals(t.substring(3, 4))
||!t.matches("[0-9]*"))
messageDialog("Wrong Input!");
else{
jtf.setText("");
trys++;
if(t.substring(0, 1).equals(r.substring(0, 1)))
A++;
if(t.substring(0, 1).equals(r.substring(1, 2)))
B++;
if(t.substring(0, 1).equals(r.substring(2, 3)))
B++;
if(t.substring(0, 1).equals(r.substring(3, 4)))
B++;
if(t.substring(1, 2).equals(r.substring(1, 2)))
A++;
if(t.substring(1, 2).equals(r.substring(0, 1)))
B++;
if(t.substring(1, 2).equals(r.substring(2, 3)))
B++;
if(t.substring(1, 2).equals(r.substring(3, 4)))
B++;
if(t.substring(2, 3).equals(r.substring(2, 3)))
A++;
if(t.substring(2, 3).equals(r.substring(0, 1)))
B++;
if(t.substring(2, 3).equals(r.substring(1, 2)))
B++;
if(t.substring(2, 3).equals(r.substring(3, 4)))
B++;
if(t.substring(3, 4).equals(r.substring(3, 4)))
A++;
if(t.substring(3, 4).equals(r.substring(0, 1)))
B++;
if(t.substring(3, 4).equals(r.substring(1, 2)))
B++;
if(t.substring(3, 4).equals(r.substring(2, 3)))
B++;
jta.append(trys+" "+t+" "+A+"A"+B+"B"+"\n");
if(A==4){
if(trys=4)
messageDialog("You win after "+trys+" trys!");
else if(trys=3)
messageDialog("You win after only "+trys+" trys!");
}
}
}
});
jf.setSize(300, 300);
jf.setVisible(true);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String args[]){
guessNumber();
}
}
我没有进行详细注释,这个程序挺好理解的,你可以自己再看一下
编写一个JAVA小程序,从键盘输入3个数,求这三个数的最大值&最小值. (显示要用对话框)
这是运行效果
上代码:
package com.sh.lw;
import java.awt.event.ActionEvent;
import java.awt.event.WindowEvent;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
public class TestFrame extends JFrame {
/**
*
*/
private static final long serialVersionUID = -3792557927147777060L;
private javax.swing.JTextField field0 = new javax.swing.JTextField(20);
private javax.swing.JTextField field1 = new javax.swing.JTextField(20);
private javax.swing.JTextField field2 = new javax.swing.JTextField(20);
private javax.swing.JTextField field3 = new javax.swing.JTextField(20);
private javax.swing.JButton max = new javax.swing.JButton("最大值");
private javax.swing.JButton min = new javax.swing.JButton("最小值");
int num1,num2,num3;
public TestFrame(){
java.awt.GridBagLayout layout = new java.awt.GridBagLayout();
java.awt.GridBagConstraints gbc = new java.awt.GridBagConstraints();
javax.swing.JPanel panel = new javax.swing.JPanel();
panel.setLayout(layout);
javax.swing.JLabel lable0 = new javax.swing.JLabel("第一个数:");
layout.setConstraints(lable0, gbc);
panel.add(lable0);
this.add(panel);
gbc.gridwidth = java.awt.GridBagConstraints.REMAINDER;
layout.setConstraints(field0, gbc);
panel.add(field0);
javax.swing.JLabel label1 = new javax.swing.JLabel("第二个数:");
gbc.gridwidth = java.awt.GridBagConstraints.RELATIVE;
layout.setConstraints(label1, gbc);
panel.add(label1);
gbc.gridwidth = java.awt.GridBagConstraints.REMAINDER;
layout.setConstraints(field1, gbc);
panel.add(field1);
javax.swing.JLabel label2 = new javax.swing.JLabel("第三个数:");
gbc.gridwidth = java.awt.GridBagConstraints.RELATIVE;
layout.setConstraints(label2, gbc);
panel.add(label2);
gbc.gridwidth = java.awt.GridBagConstraints.REMAINDER;
layout.setConstraints(field2, gbc);
panel.add(field2);
javax.swing.JLabel lable3 = new javax.swing.JLabel("结果:");
gbc.gridwidth = java.awt.GridBagConstraints.RELATIVE;
layout.setConstraints(lable3, gbc);
panel.add(lable3);
gbc.gridwidth = java.awt.GridBagConstraints.REMAINDER;
layout.setConstraints(field3, gbc);
panel.add(field3);
gbc.gridwidth = java.awt.GridBagConstraints.RELATIVE;
layout.setConstraints(max, gbc);
panel.add(max);
gbc.gridwidth = java.awt.GridBagConstraints.REMAINDER;
layout.setConstraints(min, gbc);
panel.add(min);
this.setVisible(true);
this.pack();
this.setResizable(false);
max.addActionListener(new ButtonListener());
min.addActionListener(new ButtonListener());
field3.setEditable(false);
this.addWindowListener(new MyWindowClosing());
}
class MyWindowClosing extends java.awt.event.WindowAdapter{
@Override
public void windowClosing(WindowEvent e) {
java.lang.System.exit(0);
}
}
class ButtonListener implements java.awt.event.ActionListener{
@Override
public void actionPerformed(ActionEvent e) {
String text0 = field0.getText();
String text1 = field1.getText();
String text2 = field2.getText();
if(null == text0 || "".equals(text0.trim())){
JOptionPane.showMessageDialog(null, "请输入第一个数!");
return;
}else{
try{
num1 = Integer.parseInt(text0.trim());
}catch(java.lang.NumberFormatException ne){
JOptionPane.showMessageDialog(null, "第一个数必须为数字!");
return;
}
}
if(null == text1 || "".equals(text1.trim())){
JOptionPane.showMessageDialog(null, "请输入第二个数!");
return;
}else{
try{
num2 = Integer.parseInt(text1.trim());
}catch(java.lang.NumberFormatException ne){
JOptionPane.showMessageDialog(null, "第二个数必须为数字!");
return;
}
}
if(null == text2 || "".equals(text2.trim())){
JOptionPane.showMessageDialog(null, "请输入第三个数!");
return;
}else{
try{
num3 = Integer.parseInt(text2.trim());
}catch(java.lang.NumberFormatException ne){
JOptionPane.showMessageDialog(null, "第三个数必须为数字!");
return;
}
}
Object source = e.getSource();
int arr[] = new int[]{num1,num2,num3};
int result = arr[0];
if(source == max){
for(int i=1; iarr.length; i++){
if(arr[i] result){
result = arr[i];
}
}
}else if(source == min){
for(int i=1; iarr.length; i++){
if(arr[i] result){
result = arr[i];
}
}
}
field3.setText(new Integer(result).toString());
}
}
public static void main(String[] args) {
new TestFrame();
}
}
用Java写个小程序:创建银行账号类SavingAccount,利用静态变量存储年利率,利用私有实例变量存储存款额,
import java.util.Scanner;
public class SavingAccount {
public static double account = 3000;
public static double rate = 0.03;
public void update(double rate){
this.rate = rate;
}
//flag 用来计算年利息和月利息,flag等true计算月利息
public double calc(double account , double rate , boolean flag){
if(flag)
return account * rate / 12;
return account * rate;
}
static class Test{
public static void main(String[] args) {
System.out.println("原始存款:"+SavingAccount.account + " \n原始利率:" +SavingAccount.rate );
SavingAccount sa = new SavingAccount();
System.out.println("原始年利息:"+sa.calc(SavingAccount.account,SavingAccount.rate,false));
System.out.println("原始月利息:"+sa.calc(SavingAccount.account,SavingAccount.rate,true));
System.out.println("######请输入新的利率######");
Scanner scanner = new Scanner(System.in);
sa.update(scanner.nextDouble());
System.out.println("更新后的利率:"+SavingAccount.rate);
System.out.println("更新后的年利息:"+sa.calc(SavingAccount.account,SavingAccount.rate,false));
System.out.println("更新后的月利息:"+sa.calc(SavingAccount.account,SavingAccount.rate,true));
//更新后的存款怎么算? 你是多长时间更新一次?
System.out.println("更新后的存款:"+(SavingAccount.account+sa.calc(SavingAccount.account,SavingAccount.rate,false)));
}
}
}
不知道对不对,我理解的是这样的了
用JAVA制作一个小程序,计算两个数的加减乘除,用Applet实现
下面两个可以么,是我做实验答辩时用到的!
import java.awt.*;//AWT核心包
import java.awt.event.*;//提供事件类和监听器
public class Counter extends Frame implements ActionListener
{
TextField t=new TextField("");//文本框
Panel p1=new Panel();//new一个panel,用于存放数字键和符号键。
Panel p2=new Panel();//new一个panel,用于存放开方、平方、和清除键。
Button[] b=new Button[10];//实例化Button对象
Button bAdd=new Button("加");
Button bSub=new Button("减");
Button bMul=new Button("乘以");
Button bPoint=new Button(".");
Button bDiv=new Button("除以");
Button bEqual=new Button("等於");
Button bSqrt=new Button("开方");
Button bPow=new Button("平方");
Button bNull=new Button("清除");
String str1=""; //str1和str2存放两个输入的数
String str2="";
String operator=null; //存放加减乘除以及开平方的符号
boolean first=true; //检验输入的是否为第一个数
int countOper=0; //累计输入符号的个数,连加连减等操作中会用到
double result=0.0; //暂存结果
double num1=0.0,num2=0.0; //两个输入的数做运算时转化为double存放
boolean error=false; //检验除数是否为0
//构造方法
public Counter()
{
Frame s=new Frame("计算器");//创建Frame
for(int i=0;i10;i++)//利用for循环将数字键添加进p1中
{
b[i]=new Button(String.valueOf(i));
p1.add(b[i]);
b[i].setActionCommand("number");
b[i].setForeground(new Color(150,20,20));
b[i].addActionListener(this);//调用addActionListener()方法注册事件监听器
}
p1.add(bPoint);
bPoint.setActionCommand("number");
p1.add(bAdd); //数字键,符号键放置在panel的p1中
p1.add(bSub);
p1.add(bMul);
p1.add(bDiv);
p1.add(bEqual);
p2.add(bSqrt);//开方键,平方键,清除键放置在panel的p2中
p2.add(bPow);
p2.add(bNull);
bAdd.setActionCommand("oper");
bSub.setActionCommand("oper");
bMul.setActionCommand("oper");
bDiv.setActionCommand("oper");
bAdd.setForeground(Color.red);//为组键设计颜色
bSub.setForeground(Color.red);
bMul.setForeground(Color.red);
bDiv.setForeground(Color.red);
bPoint.setForeground(Color.black);
bEqual.setForeground(Color.red);
bSqrt.setForeground(Color.blue);
bPow.setForeground(Color.blue);
bNull.setForeground(Color.blue);
bAdd.addActionListener(this);//调用addActionListener()方法注册事件监听器
bSub.addActionListener(this);
bMul.addActionListener(this);
bDiv.addActionListener(this);
bPoint.addActionListener(this);
bEqual.addActionListener(this);
bSqrt.addActionListener(this);
bPow.addActionListener(this);
bNull.addActionListener(this);
p1.setLayout(new GridLayout(4,4,5,5));//网格布局管理器,把容器根据行数和列数分成同样大小的单元,
//每个单元可容纳一个组件,并且此组件会填满网格单元,不能控
//制其占据网格的大小。4、4为网格的行、列数。5、5为组建之间的
//间距
p2.setLayout(new FlowLayout());//用FlowLayout布局管理器将组建默认剧中排放,默认间隙为5个像素
add(t,"North"); //frame的north放置输入框,panel放置在center和south
add(p1,"Center");//将p1添加到Center中
add(p2,"South");//将p2添加到South中
setLocation(400,200);//设计按钮尺寸
setSize(200,200);//设计窗口尺寸
setBackground(new Color(20,200,10));//设置Frame的背景,默认为白色
setVisible(true);//设置Frame设置为可见
addWindowListener(new WindowAdapter(){ //关闭窗口功能
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
}
//实现接口ActionListener
public void actionPerformed(ActionEvent e)
{
Button temp=(Button)e.getSource();
if(e.getActionCommand().equals("number"))
{
if(first)
{
str1=str1+temp.getLabel();
t.setText(str1);//将输入的str1显示在文本框中
}
else
{
str2=str2+temp.getLabel();
t.setText(str2);//将输入的str2显示在文本框中
}
}
else if(e.getActionCommand().equals("oper"))
{
if(str1=="") //如果还没有输入数就点击运算符执行if
{
countOper=0;//若此,则将计数清零
first=true;
}
else
{
countOper++;//计算输入符号的个数
if(countOper1)//若输入的符号个数多余一个,则可以进行计算
{
getResult();
}
operator=temp.getLabel();//存放加减乘除以及开方、平方的符号
first=false;
}
}
else if(e.getActionCommand().equals("开方"))
{
double d=Math.sqrt(Double.parseDouble(str1));
str1=String.valueOf(d);//将计算出来的结果再次传给str1,为连计算准备
t.setText(String.valueOf(d));//将计算出来的结果传至文本框中
first=false;//置为false,即已输入第一个数
}
else if(e.getActionCommand().equals("平方"))
{
double f=Math.pow(Double.parseDouble(str1),2);
str1=String.valueOf(f);
t.setText(String.valueOf(f));
first=false;
}
else if(e.getActionCommand().equals("清除"))
{
str1="";//清空
str2="";
t.setText("");//将文本框清空
countOper=0;//将按键计数器清零
first=true;
error=false;
}
else if(e.getActionCommand().equals("等於"))
{
if((str1=="")||(str2=="")) //两个数没有输全就点击等号,执行if
{
countOper=0;//将按键计数器清零
first=true;
}
else
{
getResult();
countOper=0;
}
}
}
//运算结果的方法
public void getResult()
{
num1=Double.parseDouble(str1);
num2=Double.parseDouble(str2);
if(operator.equals("加"))
{
result=num1+num2;
}
else if(operator.equals("减"))
{
result=num1-num2;
}
else if(operator.equals("乘以"))
{
result=num1*num2;
}
else if(operator.equals("除以"))
{
if(num2==0.0) //除数为0的处理方法
{
error=true;
}
else
{
result=num1/num2;
}
}
if(error)
{
t.setText("error");
}
else
{
t.setText(String.valueOf(result));
str1=String.valueOf(result); //运算后把结果放入str1中,str2清空,为连加连减等操作做准备
str2="";
}
}
//主方法
public static void main(String[] args)
{
new Counter();//创建一个对象"计算器"
}
}
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class CalculatorPanel extends JPanel
implements ActionListener
{ public CalculatorPanel()
{ setLayout(new BorderLayout());
display = new JTextField("0");
display.setEditable(false);
add(display, "North");
JPanel p = new JPanel();
p.setLayout(new GridLayout(4, 4));
String buttons = "789/456*123-0.=+";
for (int i = 0; i buttons.length(); i++)
addButton(p, buttons.substring(i, i + 1));
add(p, "Center");
}
private void addButton(Container c, String s)
{ JButton b = new JButton(s);
c.add(b);
b.addActionListener(this);
}
public void actionPerformed(ActionEvent evt)
{ String s = evt.getActionCommand();
if ('0' = s.charAt(0) s.charAt(0) = '9'
|| s.equals("."))
{ if (start) display.setText(s);
else display.setText(display.getText() + s);
start = false;
}
else
{ if (start)
{ if (s.equals("-"))
else op = s;
}
else
{ calculate(Double.parseDouble(display.getText()));
op = s;
start = true;
}
}
}
public void calculate(double n)
{ if (op.equals("+")) arg += n;
else if (op.equals("-")) arg -= n;
else if (op.equals("*")) arg *= n;
else if (op.equals("/")) arg /= n;
else if (op.equals("=")) arg = n;
display.setText("" + arg);
}
private JTextField display;
private double arg = 0;
private String op = "=";
private boolean start = true;
}
public class CalculatorApplet extends JApplet
{ public void init()
{ Container contentPane = getContentPane();
contentPane.add(new CalculatorPanel());
}
}
java一个简单小程序,求高手帮忙编写,万分感谢
class Ball {
public void play() {
System.out.println("玩球儿...");
}
}
class Football extends Ball {
public void play() {
System.out.println("使用足球运动");
}
}
class Basketball extends Ball {
public void play() {
System.out.println("使用篮球运动");
}
}
public class TestMain {
public static void main(String[] args) {
TestMain tm = new TestMain();
tm.testPlay();
}
public void testPlay() {
Ball ball = new Football();
ball.play();
ball = new Basketball();
ball.play();
}
}
/*
D:\javac TestMain.java
D:\java TestMain
使用足球运动
使用篮球运动
*/
java小程序实例的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java实用小程序、java小程序实例的信息别忘了在本站进行查找喔。
发布于:2022-11-22,除非注明,否则均为
原创文章,转载请注明出处。