『壹』 Java代码编程 经典的兔子问题

这是斐波那契数列的问题

可以用递归,也可以用循环

递归:
public class Demo3 {
// 使用递归方法
private static int getFibo(int i) {
if (i == 1 || i == 2)
return 1;
else
return getFibo(i - 1) + getFibo(i - 2);
}

public static void main(String[] args) {
System.out.println("斐波那契数列的前20项为:");
for (int j = 1; j <= 20; j++) {
System.out.print(getFibo(j) + "\t");
if (j % 5 == 0)
System.out.println();
}
}

}
循环:
public class Demo2 {
// 定义数组方法
public static void main(String[] args) {
int arr[] = new int[20];
arr[0] = arr[1] = 1;
for (int i = 2; i < arr.length; i++) {
arr[i] = arr[i - 1] + arr[i - 2];
}
System.out.println("斐波那契数列的前20项如下所示:");
for (int i = 0; i < arr.length; i++) {
if (i % 5 == 0)
System.out.println();
System.out.print(arr[i] + "\t");
}
}

}

『贰』 问一道java的编程题

做了半天,这分一定要给我哦,如果有问题,我再改吧!!

/*
* NewJFrame.java
*
* Created on 2007年4月29日, 上午1:33
*/

import java.io.*;
import java.nio.*;
import java.nio.channels.FileChannel;

/**
*
* @author Bachelor
*/
public class NewJFrame extends javax.swing.JFrame {

/** Creates new form NewJFrame */
String t1="",t2="",t3="";
public NewJFrame() {
initComponents();
}
public void output(String outText){
new NewJFrame();
String file3=System.getProperty("user.dir")+"/text.txt";
File fileText=new File(file3);
String publictype = ".pub";
String privatetype = ".pri";
File publicFile = new File(file3);

FileOutputStream pubFile = null;// Place to store the stream reference
try {
pubFile = new FileOutputStream(publicFile, true);
System.out.println("File stream created successfully.");
} catch (FileNotFoundException e) {
e.printStackTrace(System.err);
}
// Create the file output stream channel
FileChannel pubChannel = pubFile.getChannel();
ByteBuffer pubbuf = ByteBuffer.allocate(1024);
// Load the data into the buffer
byte[] pubbytes = outText.getBytes();
pubbuf.put(pubbytes);
pubbuf.flip(); // Flip the buffer ready for file write
// Write the file
try {
pubChannel.write(pubbuf); // Write the buffer to the file channel
pubFile.close(); // Close the output stream & the channel
} catch (IOException e) {
e.printStackTrace(System.err);
}

}
/** 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=" 生成的代码 ">
private void initComponents() {
jPanel1 = new javax.swing.JPanel();
jTextArea1 = new javax.swing.JTextArea();
jButton1 = new javax.swing.JButton();
jTextField1 = new javax.swing.JTextField();
jTextField2 = new javax.swing.JTextField();
jTextField3 = new javax.swing.JTextField();
jComboBox1 = new javax.swing.JComboBox();
jComboBox1.addItem("1");
jComboBox1.addItem("2");
jComboBox1.addItem("3");
jComboBox1.setSelectedIndex(0);
jComboBox2 = new javax.swing.JComboBox();
jComboBox2.addItem("1");
jComboBox2.addItem("2");
jComboBox2.addItem("3");
jComboBox2.setSelectedIndex(1);
jComboBox3 = new javax.swing.JComboBox();
jComboBox3.addItem("1");
jComboBox3.addItem("2");
jComboBox3.addItem("3");
jComboBox3.setSelectedIndex(2);

getContentPane().setLayout(null);

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jPanel1.setLayout(null);

jPanel1.setMinimumSize(new java.awt.Dimension(400, 300));
jPanel1.setPreferredSize(new java.awt.Dimension(400, 300));
jPanel1.add(jTextArea1);
jTextArea1.setBounds(30, 100, 340, 110);

jButton1.setText("\u63d0\u4ea4");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});

jPanel1.add(jButton1);
jButton1.setBounds(280, 220, 70, 23);

jTextField1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jTextField1ActionPerformed(evt);
}
});
jTextField1.addFocusListener(new java.awt.event.FocusAdapter() {
public void focusLost(java.awt.event.FocusEvent evt) {
jTextField1FocusLost(evt);
}
});

jPanel1.add(jTextField1);
jTextField1.setBounds(30, 10, 280, 20);

jTextField2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jTextField2ActionPerformed(evt);
}
});
jTextField2.addFocusListener(new java.awt.event.FocusAdapter() {
public void focusLost(java.awt.event.FocusEvent evt) {
jTextField2FocusLost(evt);
}
});

jPanel1.add(jTextField2);
jTextField2.setBounds(30, 40, 280, 20);

jTextField3.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jTextField3ActionPerformed(evt);
}
});
jTextField3.addFocusListener(new java.awt.event.FocusAdapter() {
public void focusLost(java.awt.event.FocusEvent evt) {
jTextField3FocusLost(evt);
}
});

jPanel1.add(jTextField3);
jTextField3.setBounds(30, 70, 280, 20);

jComboBox1.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent evt) {
jComboBox1ItemStateChanged(evt);
}
});

jPanel1.add(jComboBox1);
jComboBox1.setBounds(331, 10, 40, 23);

jComboBox2.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent evt) {
jComboBox2ItemStateChanged(evt);
}
});

jPanel1.add(jComboBox2);
jComboBox2.setBounds(331, 40, 40, 23);

jComboBox3.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent evt) {
jComboBox3ItemStateChanged(evt);
}
});

jPanel1.add(jComboBox3);
jComboBox3.setBounds(331, 70, 40, 23);

getContentPane().add(jPanel1);
jPanel1.setBounds(0, 0, 400, 300);

java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
setBounds((screenSize.width-408)/2, (screenSize.height-285)/2, 408, 285);
}
// </editor-fold>

private void jComboBox3ItemStateChanged(java.awt.event.ItemEvent evt) {
// TODO 将在此处添加您的处理代码:
t1=jComboBox1.getSelectedIndex()==0?jTextField1.getText()+"\n":
jComboBox1.getSelectedIndex()==1?jTextField2.getText()+"\n":jTextField3.getText()+"\n";
t2=jComboBox2.getSelectedIndex()==0?jTextField1.getText()+"\n":
jComboBox2.getSelectedIndex()==1?jTextField2.getText()+"\n":jTextField3.getText()+"\n";
t3=jComboBox3.getSelectedIndex()==0?jTextField1.getText():
jComboBox3.getSelectedIndex()==1?jTextField2.getText():jTextField3.getText();
jTextArea1.setText(t1+t2+t3);
}

private void jComboBox2ItemStateChanged(java.awt.event.ItemEvent evt) {
// TODO 将在此处添加您的处理代码:
t1=jComboBox1.getSelectedIndex()==0?jTextField1.getText()+"\n":
jComboBox1.getSelectedIndex()==1?jTextField2.getText()+"\n":jTextField3.getText()+"\n";
t2=jComboBox2.getSelectedIndex()==0?jTextField1.getText()+"\n":
jComboBox2.getSelectedIndex()==1?jTextField2.getText()+"\n":jTextField3.getText()+"\n";
t3=jComboBox3.getSelectedIndex()==0?jTextField1.getText():
jComboBox3.getSelectedIndex()==1?jTextField2.getText():jTextField3.getText();
jTextArea1.setText(t1+t2+t3);
}

private void jComboBox1ItemStateChanged(java.awt.event.ItemEvent evt) {
// TODO 将在此处添加您的处理代码:
t1=jComboBox1.getSelectedIndex()==0?jTextField1.getText()+"\n":
jComboBox1.getSelectedIndex()==1?jTextField2.getText()+"\n":jTextField3.getText()+"\n";
t2=jComboBox2.getSelectedIndex()==0?jTextField1.getText()+"\n":
jComboBox2.getSelectedIndex()==1?jTextField2.getText()+"\n":jTextField3.getText()+"\n";
t3=jComboBox3.getSelectedIndex()==0?jTextField1.getText():
jComboBox3.getSelectedIndex()==1?jTextField2.getText():jTextField3.getText();
jTextArea1.setText(t1+t2+t3);
}

private void jTextField1FocusLost(java.awt.event.FocusEvent evt) {
// TODO 将在此处添加您的处理代码:
t1=jComboBox1.getSelectedIndex()==0?jTextField1.getText()+"\n":
jComboBox1.getSelectedIndex()==1?jTextField2.getText()+"\n":jTextField3.getText()+"\n";
t2=jComboBox2.getSelectedIndex()==0?jTextField1.getText()+"\n":
jComboBox2.getSelectedIndex()==1?jTextField2.getText()+"\n":jTextField3.getText()+"\n";
t3=jComboBox3.getSelectedIndex()==0?jTextField1.getText():
jComboBox3.getSelectedIndex()==1?jTextField2.getText():jTextField3.getText();
jTextArea1.setText(t1+t2+t3);
}

private void jTextField3FocusLost(java.awt.event.FocusEvent evt) {
// TODO 将在此处添加您的处理代码:
t1=jComboBox1.getSelectedIndex()==0?jTextField1.getText()+"\n":
jComboBox1.getSelectedIndex()==1?jTextField2.getText()+"\n":jTextField3.getText()+"\n";
t2=jComboBox2.getSelectedIndex()==0?jTextField1.getText()+"\n":
jComboBox2.getSelectedIndex()==1?jTextField2.getText()+"\n":jTextField3.getText()+"\n";
t3=jComboBox3.getSelectedIndex()==0?jTextField1.getText():
jComboBox3.getSelectedIndex()==1?jTextField2.getText():jTextField3.getText();
jTextArea1.setText(t1+t2+t3);
}

private void jTextField2FocusLost(java.awt.event.FocusEvent evt) {
// TODO 将在此处添加您的处理代码:
t1=jComboBox1.getSelectedIndex()==0?jTextField1.getText()+"\n":
jComboBox1.getSelectedIndex()==1?jTextField2.getText()+"\n":jTextField3.getText()+"\n";
t2=jComboBox2.getSelectedIndex()==0?jTextField1.getText()+"\n":
jComboBox2.getSelectedIndex()==1?jTextField2.getText()+"\n":jTextField3.getText()+"\n";
t3=jComboBox3.getSelectedIndex()==0?jTextField1.getText():
jComboBox3.getSelectedIndex()==1?jTextField2.getText():jTextField3.getText();
jTextArea1.setText(t1+t2+t3);
}

private void jTextField2ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO 将在此处添加您的处理代码:
}

private void jTextField3ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO 将在此处添加您的处理代码:
}

private void jTextField1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO 将在此处添加您的处理代码:
}

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO 将在此处添加您的处理代码:
output(jTextArea1.getText());
}

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new NewJFrame().setVisible(true);
}
});
}

// 变量声明 - 不进行修改
private javax.swing.JButton jButton1;
private javax.swing.JComboBox jComboBox1;
private javax.swing.JComboBox jComboBox2;
private javax.swing.JComboBox jComboBox3;
private javax.swing.JPanel jPanel1;
private javax.swing.JTextArea jTextArea1;
private javax.swing.JTextField jTextField1;
private javax.swing.JTextField jTextField2;
private javax.swing.JTextField jTextField3;
// 变量声明结束
}