Java代碼四百行 幾百行代碼

求JAVA編程代碼…………

下面是WINDOW界面的代碼,用JAVA SWING寫的。

專注于為中小企業(yè)提供網站制作、成都網站設計服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)桓臺免費做網站提供優(yōu)質的服務。我們立足成都,凝聚了一批互聯網行業(yè)人才,有力地推動了上1000+企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網站建設實現規(guī)模擴充和轉變。

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

public class PlusWhile {

//主面板

private JFrame mainTop = null;

private JPanel inPanel = null; //輸入面板

private JPanel outPanel = null;//輸出面板

private JButton count = null; //按鈕

private JTextField inText = null; // 輸入文本框

private JTextField result = null;//結果文本框

private JLabel resultOut = null;//輸出提示

private JLabel remindIn = null;//輸入提示

//初始化方法

private void init() {

//組件實例化

mainTop = new JFrame("階乘計算器");

inPanel = new JPanel();

outPanel = new JPanel();

count = new JButton("計算");

inText = new JTextField(10);

result = new JTextField(10);

resultOut = new JLabel("計算的結果:");

remindIn = new JLabel("請輸入要計算的正整數:");

//添加輸入組件

inPanel.add(remindIn);

inPanel.add(inText);

inPanel.add(count);

//添加輸出組件

outPanel.add(resultOut);

outPanel.add(result);

result.setEnabled(false);

//設置布局樣式

mainTop.setLayout(new BorderLayout());

//主面板添加組件

mainTop.add(inPanel, BorderLayout.NORTH);

mainTop.add(outPanel, BorderLayout.SOUTH);

//設置監(jiān)聽

count.addActionListener(new ButtonListener());

//設置屏顯位置

mainTop.setLocation(350 , 300);

mainTop.pack();

mainTop.setVisible(true);

mainTop.setAlwaysOnTop(true);

//設置關閉事件

mainTop.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

//監(jiān)聽類

private class ButtonListener implements ActionListener {

public void actionPerformed(ActionEvent event) {

int inputNum = 0;

String input = inText.getText();

//若輸入為非數字,提示錯誤

try {

inputNum = Integer.parseInt(input);

}catch(Exception e) {

inputNum = -1;

}

//輸入數值小于0,提示錯誤

if(inputNum 0) {

inText.setText("請輸入正確的數值!");

result.setText("");

}

else if(inputNum == 0) {//輸入值為0處理

result.setText("1");

}

else {//輸入值為正整數,計算階乘

int temp = inputNum;

while(inputNum 1) {

temp *= --inputNum;

}

result.setText(temp + "");

}

}

}

//入口方法

public static void main(String[] args) {

new PlusWhile().init();

}

}

有什么不明白的繼續(xù)補充,呵呵。 加點兒分不。

一個簡單的Java程序代碼?

package com.zpp;public class Charge {

public static void main(String [] args) {

if(args.length ==0) {

System.out.println("parameter error!");

System.out.println("java com.zpp.Charge [int]");

return;

}

int min = Integer.parseInt(args[0]);

double money = 0.0;

if (min = 0) {

money =0.0;

System.out.println("not money");

} else if (min = 60) {

money = 2.0;

} else {

money = 2.0 + (min - 60) * 0.01;

}

System.out.println("please pay: " + money);

}

} 編譯:javac -d . Charge.java運行:java com.zpp.Charge 111

利用java編寫代碼實現如下功能,需要全部代碼

很簡單的應用,為了節(jié)省字數,代碼注釋我就不加了

首先是顯示層,LoinWindow:

import?java.awt.FlowLayout;

import?java.awt.GridBagConstraints;

import?java.awt.GridBagLayout;

import?java.awt.GridLayout;

import?java.awt.event.ActionEvent;

import?java.awt.event.ActionListener;

import?java.awt.event.FocusEvent;

import?java.awt.event.FocusListener;

import?javax.swing.JButton;

import?javax.swing.JFrame;

import?javax.swing.JLabel;

import?javax.swing.JOptionPane;

import?javax.swing.JPanel;

import?javax.swing.JTextField;

import?javax.swing.border.EmptyBorder;

public?class?LoinWindow?extends?JFrame?implements?ActionListener,?FocusListener?{

private?JPanel?mainPanel,?namePanel,?btnPanel;

private?JTextField?tfName,?tfPsd;

private?JButton?btnLogin,?btnCancel;

private?static?final?int?WIDTH?=?300;

private?static?final?int?HEIGHT?=?200;

private?LoginService?service?=?new?LoginService();

public?LoinWindow()?{

super("登錄窗體");

}

public?void?launch()?{

setSize(WIDTH,?HEIGHT);

setVisible(true);

setDefaultCloseOperation(EXIT_ON_CLOSE);

GridLayout?mainLayout?=?new?GridLayout(2,?1);

mainLayout.setVgap(10);

mainPanel?=?new?JPanel(mainLayout);

GridBagLayout?nameLayout?=?new?GridBagLayout();

namePanel?=?new?JPanel(nameLayout);

namePanel.setBorder(new?EmptyBorder(10,?10,?10,?10));

JLabel?nameLabel?=?new?JLabel("姓名:");

tfName?=?new?JTextField();

JLabel?psdLabel?=?new?JLabel("密碼:");

tfPsd?=?new?JTextField();

JLabel?blank?=?new?JLabel("?");

namePanel.add(nameLabel);

namePanel.add(tfName);

namePanel.add(blank);

namePanel.add(psdLabel);

namePanel.add(tfPsd);

GridBagConstraints?s?=?new?GridBagConstraints();

s.fill?=?GridBagConstraints.BOTH;

s.gridwidth?=?1;

s.weightx?=?0;

s.weighty?=?0;

nameLayout.setConstraints(nameLabel,?s);

s.gridwidth?=?0;

s.weightx?=?1;

s.weighty?=?0;

nameLayout.setConstraints(tfName,?s);

s.gridwidth?=?0;

s.weightx?=?4;

s.weighty?=?0;

nameLayout.setConstraints(blank,?s);

s.gridwidth?=?1;

s.weightx?=?0;

s.weighty?=?0;

nameLayout.setConstraints(psdLabel,?s);

s.gridwidth?=?3;

s.weightx?=?1;

s.weighty?=?0;

nameLayout.setConstraints(tfPsd,?s);

FlowLayout?btnLayout?=?new?FlowLayout();

btnLayout.setAlignment(FlowLayout.CENTER);

btnPanel?=?new?JPanel(btnLayout);

btnLogin?=?new?JButton("確定");

btnCancel?=?new?JButton("取消");

btnPanel.add(btnLogin);

btnPanel.add(btnCancel);

btnCancel.addActionListener(this);

btnLogin.addActionListener(this);

mainPanel.add(namePanel);

mainPanel.add(btnPanel);

setContentPane(mainPanel);

tfName.addFocusListener(this);

tfPsd.addFocusListener(this);

pack();

setSize(WIDTH,?HEIGHT);

setLocationRelativeTo(null);

}

@Override

public?void?actionPerformed(ActionEvent?e)?{

Object?source?=?e.getSource();

if(source?==?btnCancel)?{

System.exit(0);

}?else?if(source?==?btnLogin)?{

String?username?=?tfName.getText();

String?password?=?tfPsd.getText();

boolean?success?=?service.login(username,?password);

if(success)?{

warn("成功",?"登錄成功!");

}?else?{

warn("失敗",?"您輸入的用戶名或密碼錯誤?!");

}

}

}

@Override

public?void?focusGained(FocusEvent?arg0)?{

}

@Override

public?void?focusLost(FocusEvent?e)?{

Object?source?=?e.getSource();

if(source?==?tfName)?{

String?username?=?tfName.getText();

try?{

service.matchUsername(username);

}?catch?(LoginException?e1)?{

warn("驗證錯誤",?e1.getMessage());

}

}?else?if(source?==?tfPsd)?{

String?password?=?tfPsd.getText();

try?{

service.matchPassword(password);

}?catch?(LoginException?e1)?{

warn("驗證錯誤",?e1.getMessage());

}

}

}

private?void?warn(String?title,?String?msg)?{

JOptionPane.showMessageDialog(null,?msg,?title,?JOptionPane.INFORMATION_MESSAGE);

}

public?static?void?main(String[]?args)?{

new?LoinWindow().launch();

}

}

然后是模型層:LoginDao

public?class?LoginDao?{

public?boolean?login(String?username,?String?password)?{

if(username.equals("admin")??password.equals("12345"))?{

return?true;

}

return?false;

}

}

LoginService

import?java.util.regex.Pattern;

public?class?LoginService?{

private?static?final?Pattern?LOGIN_PATTERN?=?Pattern.compile("[a-zA-Z]+");

private?static?final?Pattern?PASSWORD_PATTERN?=?Pattern.compile("[1-9]+");

private?LoginDao?dao?=?new?LoginDao();

public?boolean?matchUsername(String?username)?throws?LoginException?{

if(null?==?username?||?username.isEmpty())?{

return?false;

}

if(!LOGIN_PATTERN.matcher(username).matches())?{

throw?new?LoginException("您輸入的用戶名不合法,請輸入英文!");

}

return?true;

}

public?boolean?matchPassword(String?password)?throws?LoginException?{

if(null?==?password?||?password.isEmpty())?{

return?false;

}

if(!PASSWORD_PATTERN.matcher(password).matches())?{

throw?new?LoginException("您輸入的密碼不合法,請輸入數字!");

}

return?true;

}

public?boolean?login(String?username,?String?password)?{

if(null?==?username?||?username.isEmpty())?{

return?false;

}

if(null?==?password?||?password.isEmpty())?{

return?false;

}

if(!dao.login(username,?password))?{

return?false;

}

return?true;

}

}

LoginException

public?class?LoginException?extends?Exception?{

public?LoginException(String?arg0)?{

super(arg0);

}

}

不知道分層設計思想是不是我想的這樣

跪求一個JAVA小程序,一定是可運行!

import java.awt.BorderLayout;

import java.awt.Color;

import java.awt.GridLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JPanel;

import javax.swing.JTextField;

/**

* 一個計算器,與Windows附件自帶計算器的標準版功能、界面相仿。

* 但還不支持鍵盤操作。

*/

public class Calculator extends JFrame implements ActionListener {

/** 計算器上的鍵的顯示名字 */

private final String[] KEYS = { "7", "8", "9", "/", "sqrt", "4", "5", "6",

"*", "%", "1", "2", "3", "-", "1/x", "0", "+/-", ".", "+", "=" };

/** 計算器上的功能鍵的顯示名字 */

private final String[] COMMAND = { "Backspace", "CE", "C" };

/** 計算器左邊的M的顯示名字 */

private final String[] M = { " ", "MC", "MR", "MS", "M+" };

/** 計算器上鍵的按鈕 */

private JButton keys[] = new JButton[KEYS.length];

/** 計算器上的功能鍵的按鈕 */

private JButton commands[] = new JButton[COMMAND.length];

/** 計算器左邊的M的按鈕 */

private JButton m[] = new JButton[M.length];

/** 計算結果文本框 */

private JTextField resultText = new JTextField("0");

// 標志用戶按的是否是整個表達式的第一個數字,或者是運算符后的第一個數字

private boolean firstDigit = true;

// 計算的中間結果。

private double resultNum = 0.0;

// 當前運算的運算符

private String operator = "=";

// 操作是否合法

private boolean operateValidFlag = true;

/**

* 構造函數

*/

public Calculator(){

super();

//初始化計算器

init();

//設置計算器的背景顏色

this.setBackground(Color.LIGHT_GRAY);

this.setTitle("計算器");

//在屏幕(500, 300)坐標處顯示計算器

this.setLocation(500, 300);

//不許修改計算器的大小

this.setResizable(false);

//使計算器中各組件大小合適

this.pack();

}

/**

* 初始化計算器

*/

private void init() {

// 文本框中的內容采用右對齊方式

resultText.setHorizontalAlignment(JTextField.RIGHT);

// 不允許修改結果文本框

resultText.setEditable(false);

// 設置文本框背景顏色為白色

resultText.setBackground(Color.white);

//初始化計算器上鍵的按鈕,將鍵放在一個畫板內

JPanel calckeysPanel = new JPanel();

//用網格布局器,4行,5列的網格,網格之間的水平方向間隔為3個象素,垂直方向間隔為3個象素

calckeysPanel.setLayout(new GridLayout(4, 5, 3, 3));

for (int i = 0; i KEYS.length; i++) {

keys[i] = new JButton(KEYS[i]);

calckeysPanel.add(keys[i]);

keys[i].setForeground(Color.blue);

}

//運算符鍵用紅色標示,其他鍵用藍色表示

keys[3].setForeground(Color.red);

keys[8].setForeground(Color.red);

keys[13].setForeground(Color.red);

keys[18].setForeground(Color.red);

keys[19].setForeground(Color.red);

//初始化功能鍵,都用紅色標示。將功能鍵放在一個畫板內

JPanel commandsPanel = new JPanel();

//用網格布局器,1行,3列的網格,網格之間的水平方向間隔為3個象素,垂直方向間隔為3個象素

commandsPanel.setLayout(new GridLayout(1, 3, 3, 3));

for (int i = 0; i COMMAND.length; i++) {

commands[i] = new JButton(COMMAND[i]);

commandsPanel.add(commands[i]);

commands[i].setForeground(Color.red);

}

//初始化M鍵,用紅色標示,將M鍵放在一個畫板內

JPanel calmsPanel = new JPanel();

//用網格布局管理器,5行,1列的網格,網格之間的水平方向間隔為3個象素,垂直方向間隔為3個象素

calmsPanel.setLayout(new GridLayout(5, 1, 3, 3));

for (int i = 0; i M.length; i++) {

m[i] = new JButton(M[i]);

calmsPanel.add(m[i]);

m[i].setForeground(Color.red);

}

//下面進行計算器的整體布局,將calckeys和command畫板放在計算器的中部,

//將文本框放在北部,將calms畫板放在計算器的西部。

//新建一個大的畫板,將上面建立的command和calckeys畫板放在該畫板內

JPanel panel1 = new JPanel();

//畫板采用邊界布局管理器,畫板里組件之間的水平和垂直方向上間隔都為3象素

panel1.setLayout(new BorderLayout(3, 3));

panel1.add("North", commandsPanel);

panel1.add("West", calckeysPanel);

//建立一個畫板放文本框

JPanel top = new JPanel();

top.setLayout(new BorderLayout());

top.add("Center", resultText);

//整體布局

getContentPane().setLayout(new BorderLayout(3, 5));

getContentPane().add("North", top);

getContentPane().add("Center", panel1);

getContentPane().add("West", calmsPanel);

//為各按鈕添加事件偵聽器

//都使用同一個事件偵聽器,即本對象。本類的聲明中有implements ActionListener

for (int i = 0; i KEYS.length; i++) {

keys[i].addActionListener(this);

}

for (int i = 0; i COMMAND.length; i++) {

commands[i].addActionListener(this);

}

for (int i = 0; i M.length; i++) {

m[i].addActionListener(this);

}

}

/**

* 處理事件

*/

public void actionPerformed(ActionEvent e) {

//獲取事件源的標簽

String label = e.getActionCommand();

if (label.equals(COMMAND[0])){

//用戶按了"Backspace"鍵

handleBackspace();

} else if (label.equals(COMMAND[1])) {

//用戶按了"CE"鍵

resultText.setText("0");

} else if (label.equals(COMMAND[2])){

//用戶按了"C"鍵

handleC();

} else if ("0123456789.".indexOf(label) = 0) {

//用戶按了數字鍵或者小數點鍵

handleNumber(label);

// handlezero(zero);

} else {

//用戶按了運算符鍵

handleOperator(label);

}

}

/**

* 處理Backspace鍵被按下的事件

*/

private void handleBackspace() {

String text = resultText.getText();

int i = text.length();

if (i 0) {

//退格,將文本最后一個字符去掉

text = text.substring(0, i - 1);

if (text.length() == 0) {

//如果文本沒有了內容,則初始化計算器的各種值

resultText.setText("0");

firstDigit = true;

operator = "=";

} else {

//顯示新的文本

resultText.setText(text);

}

}

}

/**

* 處理數字鍵被按下的事件

* @param key

*/

private void handleNumber(String key) {

if (firstDigit) {

//輸入的第一個數字

resultText.setText(key);

} else if ((key.equals(".")) (resultText.getText().indexOf(".") 0)){

//輸入的是小數點,并且之前沒有小數點,則將小數點附在結果文本框的后面

resultText.setText(resultText.getText() + ".");

} else if (!key.equals(".")) {

//如果輸入的不是小數點,則將數字附在結果文本框的后面

resultText.setText(resultText.getText() + key);

}

//以后輸入的肯定不是第一個數字了

firstDigit = false;

}

/**

* 處理C鍵被按下的事件

*/

private void handleC() {

//初始化計算器的各種值

resultText.setText("0");

firstDigit = true;

operator = "=";

}

/**

* 處理運算符鍵被按下的事件

* @param key

*/

private void handleOperator(String key) {

if (operator.equals("/")) {

//除法運算

//如果當前結果文本框中的值等于0

if (getNumberFromText() == 0.0){

//操作不合法

operateValidFlag = false;

resultText.setText("除數不能為零");

} else {

resultNum /= getNumberFromText();

}

} else if (operator.equals("1/x")) {

//倒數運算

if (resultNum == 0.0){

//操作不合法

operateValidFlag = false;

resultText.setText("零沒有倒數");

} else {

resultNum = 1 / resultNum;

}

} else if (operator.equals("+")){

//加法運算

resultNum += getNumberFromText();

} else if (operator.equals("-")){

//減法運算

resultNum -= getNumberFromText();

} else if (operator.equals("*")){

//乘法運算

resultNum *= getNumberFromText();

} else if (operator.equals("sqrt")) {

//平方根運算

resultNum = Math.sqrt(resultNum);

} else if (operator.equals("%")){

//百分號運算,除以100

resultNum = resultNum / 100;

} else if (operator.equals("+/-")){

//正數負數運算

resultNum = resultNum * (-1);

} else if (operator.equals("=")){

//賦值運算

resultNum = getNumberFromText();

}

if (operateValidFlag) {

//雙精度浮點數的運算

long t1;

double t2;

t1 = (long) resultNum;

t2 = resultNum - t1;

if (t2 == 0) {

resultText.setText(String.valueOf(t1));

} else {

resultText.setText(String.valueOf(resultNum));

}

}

//運算符等于用戶按的按鈕

operator = key;

firstDigit = true;

operateValidFlag = true;

}

/**

* 從結果文本框中獲取數字

* @return

*/

private double getNumberFromText() {

double result = 0;

try {

result = Double.valueOf(resultText.getText()).doubleValue();

} catch (NumberFormatException e){

}

return result;

}

public static void main(String args[]) {

Calculator calculator1 = new Calculator();

calculator1.setVisible(true);

calculator1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

}

期末JAVA課程考試,老師讓做一個400行的程序

額,四百行?隨便貼幾個類給你就夠了。不過你老師也真變態(tài),不會要你們在一個類里寫四百行吧,哪有老師叫人家寫程序是按行算的??。。。。?!悲劇的老師

單片機程序400行代碼算多嗎

這個代碼有點多,應該精簡。你應該想想如何用更少的代碼完成相應的功能,什么時候能用100行代碼完成你400行代碼的功能時,你才發(fā)現自己進步了

本文名稱:Java代碼四百行 幾百行代碼
網站地址:http://muchs.cn/article0/hgeiio.html

成都網站建設公司_創(chuàng)新互聯,為您提供、ChatGPT響應式網站、網站改版、網站內鏈網站設計公司

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯

成都seo排名網站優(yōu)化