import?java.awt.*;
網(wǎng)站設(shè)計制作、成都網(wǎng)站建設(shè)的關(guān)注點不是能為您做些什么網(wǎng)站,而是怎么做網(wǎng)站,有沒有做好網(wǎng)站,給成都創(chuàng)新互聯(lián)一個展示的機(jī)會來證明自己,這并不會花費您太多時間,或許會給您帶來新的靈感和驚喜。面向用戶友好,注重用戶體驗,一切以用戶為中心。
import?java.awt.event.*;
import?java.io.*;
import?javax.swing.*;
public?class?MyNotepad?implements?ActionListener
{
private?JFrame?frame=new?JFrame("新記事本");
private?JTextArea?jta=new?JTextArea();
private?String?result="";
private?boolean?flag=true;
private?File?f;
private?JButton?jb=new?JButton("開始");
private?JTextField?jtf=new?JTextField(15);
private?JTextField?jt=new?JTextField(15);
private?JButton?jbt=new?JButton("替換為");
private?JButton?jba=new?JButton("全部替換");
private?Icon?ic=new?ImageIcon("D:\\java課堂筆記\\GUI\\11.gif");
private?String?value;
private?int?start=0;
private?JFrame?jf=new?JFrame("查找");
private?JFrame?jfc=new?JFrame("替換");
@Override
public?void?actionPerformed(ActionEvent?e)?
{
String?comm=e.getActionCommand();
if("新建".equals(comm))
{
if(!(frame.getTitle().equals("新記事本")))
{
if(!flag)
{
write();
newNew();
}
else
{
JFileChooser?jfc=new?JFileChooser("D:\\java課堂筆記");
int?returnVal?=?jfc.showDialog(null,"保存為");
if(returnVal?==?JFileChooser.APPROVE_OPTION)?
{//選擇文件后再執(zhí)行下面的語句,保證了程序的健壯性
f=jfc.getSelectedFile();
flag=false;
write();
}
}
}
else?if(!(jta.getText().isEmpty()))
{
JFileChooser?jfc=new?JFileChooser("D:\\java課堂筆記");
int?returnVal?=?jfc.showDialog(null,"保存為");
if(returnVal?==?JFileChooser.APPROVE_OPTION)?
{//選擇文件后再執(zhí)行下面的語句,保證了程序的健壯性
f=jfc.getSelectedFile();
flag=false;
write();
newNew();
}
}
else
{
newNew();
}
}
else?if("打開".equals(comm))
{
JFileChooser?jfc=new?JFileChooser("D:\\java課堂筆記");
jfc.setDialogType(JFileChooser.OPEN_DIALOG);
int?returnVal?=?jfc.showOpenDialog(null);
if(returnVal?==?JFileChooser.APPROVE_OPTION)
{//選擇文件后再執(zhí)行下面的語句,保證了程序的健壯性
f=jfc.getSelectedFile();
frame.setTitle(f.getName());
result=read();
flag=false;
value=result;
jta.setText(result);
}
}else?if("保存".equals(comm))
{
JFileChooser?jfc=new?JFileChooser("D:\\java課堂筆記");
if(flag)
{
int?returnVal?=?jfc.showDialog(null,"保存為");
if(returnVal?==?JFileChooser.APPROVE_OPTION)
{//選擇文件后再執(zhí)行下面的語句,保證了程序的健壯性
f=jfc.getSelectedFile();
flag=false;
write();
}
}
else
{
write();
}
}
else?if("另存".equals(comm))
{
JFileChooser?jfc=new?JFileChooser("D:\\java課堂筆記");
int?returnVal?=?jfc.showDialog(null,"另存");
if(returnVal?==?JFileChooser.APPROVE_OPTION)?
{//選擇文件后再執(zhí)行下面的語句,保證了程序的健壯性
f=jfc.getSelectedFile();
write();
}
}
else?if("退出".equals(comm))
{
System.exit(0);
}
else?if("撤銷".equals(comm))
{
jta.setText(value);
}
else?if("剪切".equals(comm))
{
value=jta.getText();
jta.cut();
}
else?if("復(fù)制".equals(comm))
{
jta.copy();
}
else?if("粘貼".equals(comm))
{
value=jta.getText();
jta.paste();
}
else?if("刪除".equals(comm))
{
value=jta.getText();
jta.replaceSelection(null);
}
else?if("全選".equals(comm))
{
jta.selectAll();
}
else?if("查找".equals(comm))
{
value=jta.getText();
jf.add(jtf,BorderLayout.CENTER);
jf.add(jb,BorderLayout.SOUTH);
jf.setLocation(300,300);
jf.pack();
jf.setVisible(true);
jf.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
}
else?if("替換".equals(comm))
{
value=jta.getText();
GridLayout?gl=new?GridLayout(3,3);
JLabel?jl1=new?JLabel("查找內(nèi)容:");
JLabel?jl2=new?JLabel("替換為:");
jfc.setLayout(gl);
jfc.add(jl1);
jfc.add(jtf);
jfc.add(jb);
jfc.add(jl2);
jfc.add(jt);
jfc.add(jbt);
JLabel?jl3=new?JLabel();
JLabel?jl4=new?JLabel();
jfc.add(jl3);
jfc.add(jl4);
jfc.add(jba);
jfc.setLocation(300,300);
jfc.pack();
jfc.setVisible(true);
jfc.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
}
else?if("版本".equals(comm))
{
JDialog?jd=new?JDialog(frame,"關(guān)于對話框");
jd.setSize(200,200);
JLabel?l=new?JLabel("哈哈哈哈哈哈哈哈哈哈呵呵呵呵呵呵呵呵呵呵呵呵呵");
jd.add(l,BorderLayout.CENTER);
jd.setLocation(100,200);
jd.setSize(300,300);
jd.setVisible(true);
// ?jd.pack();
jd.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
}
else?if("開始".equals(comm)||"下一個".equals(comm))
{
String?temp=jtf.getText();
int?s=value.indexOf(temp,start);
if(value.indexOf(temp,start)!=-1)
{
jta.setSelectionStart(s);
jta.setSelectionEnd(s+temp.length());
jta.setSelectedTextColor(Color.GREEN);
start=s+1;
jb.setText("下一個");
// ?value=value.substring(s+temp.length());//不能截取字串
}
else?
{
JOptionPane.showMessageDialog(jf,?"查找完畢!",?"提示",?0,?ic);
jf.dispose();
}
}
else?if("替換為".equals(comm))
{
String?temp=jtf.getText();
int?s=value.indexOf(temp,start);
if(value.indexOf(temp,start)!=-1)
{
jta.setSelectionStart(s);
jta.setSelectionEnd(s+temp.length());
jta.setSelectedTextColor(Color.GREEN);
start=s+1;
jta.replaceSelection(jt.getText());
}
else
{
JOptionPane.showMessageDialog(jf,?"查找完畢!",?"提示",?0,?ic);
jf.dispose();
}
}
else?if("全部替換".equals(comm))
{
String?temp=jta.getText();
temp=temp.replaceAll(jtf.getText(),?jt.getText());
jta.setText(temp);
}
}
public?String?read()
{
String?temp="";
try?
{
FileInputStream?fis?=?new?FileInputStream(f.getAbsolutePath());
byte[]?b=new?byte[1024];
while(true)
{
int?num=fis.read(b);
if(num==-1)
break;
temp=temp+new?String(b,0,num);
}
fis.close();
}
catch?(Exception?e1)
{
e1.printStackTrace();
}
return?temp;
}
public?void?write()
{
try
{
FileOutputStream?fos=new?FileOutputStream(f);
fos.write(jta.getText().getBytes());
fos.close();
}
catch?(Exception?e)
{
e.printStackTrace();
}
}
public?void?newNew()
{
frame.dispose();
new?MyNotepad();
flag=true;
}
public?MyNotepad()
{
JMenuBar?jmb=new?JMenuBar();
String[]?menuLab={"文件","編輯","幫助"};
String[][]?menuItemLab={{"新建","打開","保存","另存","退出"},
{"撤銷","剪切","復(fù)制","粘貼","刪除","全選","查找","替換"},
{"版本"}};
for(int?i=0;imenuLab.length;i++)
{
JMenu?menu=new?JMenu(menuLab[i]);
jmb.add(menu);
for(int?j=0;jmenuItemLab[i].length;j++)
{
JMenuItem?jmi=new?JMenuItem(menuItemLab[i][j]);
menu.add(jmi);
jmi.addActionListener(this);
}
}
frame.setJMenuBar(jmb);
jta.setLineWrap(true);//自動換行
JScrollPane?jsp=new?JScrollPane(jta);//滾動窗口面板
frame.add(jsp);
jb.addActionListener(this);
jbt.addActionListener(this);
jba.addActionListener(this);
frame.setLocation(200,50);
frame.setSize(620,660);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public?static?void?main(String[]?args)
{
new?MyNotepad();
}
}
一、Java IO學(xué)習(xí)基礎(chǔ)之讀寫文本文件
Java的IO操作都是基于流進(jìn)行操作的,為了提高讀寫效率一般需要進(jìn)行緩沖。
簡單的示例程序如下:
/**
* 讀出1.txt中的內(nèi)容,寫入2.txt中
*
*/
import java.io.*;
public class ReadWriteFile{
public static void main(String[] args){
try{
File read = new File("c:\\1.txt");
File write = new File("c:\\2.txt");
BufferedReader br = new BufferedReader(
new FileReader(read));
BufferedWriter bw = new BufferedWriter(
new FileWriter(write));
String temp = null;
temp = br.readLine();
while(temp != null){
//寫文件
bw.write(temp + "\r\n"); //只適用Windows系統(tǒng)
//繼續(xù)讀文件
temp = br.readLine();
}
bw.close();
br.close();
}catch(FileNotFoundException e){ //文件未找到
System.out.println (e);
}catch(IOException e){
System.out.println (e);
}
}
}
以上是一個比較簡單的基礎(chǔ)示例。本文上下兩部分都是從網(wǎng)上摘抄,合并在一起,方便下自己以后查找。
二、Java IO學(xué)習(xí)筆記+代碼
文件對象的生成和文件的創(chuàng)建
/*
* ProcessFileName.java
*
* Created on 2006年8月22日, 下午3:10
*
* 文件對象的生成和文件的創(chuàng)建
*/
package study.iostudy;
import java.io.*;
public class GenerateFile
{
public static void main(String[] args)
{
File dirObject = new File("d:\\mydir");
File fileObject1 = new File("oneFirst.txt");
File fileObject2 = new File("d:\\mydir", "firstFile.txt");
System.out.println(fileObject2);
try
{
dirObject.mkdir();
}catch(SecurityException e)
{
e.printStackTrace();
}
try
{
fileObject2.createNewFile();
fileObject1.createNewFile();
}catch(IOException e)
{
e.printStackTrace();
}
}
}
文件名的處理
/*
* ProcessFileName.java
*
* Created on 2006年8月22日, 下午3:29
*
* 文件名的處理
*/
package study.iostudy;
import java.io.*;
/*
* 文件名的處理
* String getName(); 獲得文件的名稱,不包含文件所在的路徑。
* String getPath(); 獲得文件的路徑。
* String getAbsolutePath(); 獲得文件的絕對路徑。
* String getParent(); 獲得文件的上一級目錄的名稱。
* String renameTo(File newName); 按參數(shù)中給定的完整路徑更改當(dāng)前的文件名。
* int compareTo(File pathName); 按照字典順序比較兩個文件對象的路徑。
* boolean isAbsolute(); 測試文件對象的路徑是不是絕對路徑。
*/
public class ProcesserFileName
{
public static void main(String[] args)
{
File fileObject1 = new File("d:\\mydir\\firstFile.txt");
File fileObject2 = new File("d:\\firstFile.txt");
boolean pathAbsolute = fileObject1.isAbsolute();
System.out.println("* * * * * * * * * * * * * * * * * * * * * * * * ");
System.out.println("There are some information of fileObject1's file name:");
System.out.println("fileObject1: " + fileObject1);
System.out.println("fileObject2: " + fileObject2);
System.out.println("file name: " + fileObject1.getName());
System.out.println("file path: " + fileObject1.getPath());
System.out.println("file absolute path: " + fileObject1.getAbsolutePath());
System.out.println("file's parent directory: " + fileObject1.getParent());
System.out.println("file's absoulte path: " + pathAbsolute);
int sameName = fileObject1.compareTo(fileObject2);
System.out.println("fileObject1 compare to fileObject2: " + sameName);
fileObject1.renameTo(fileObject2);
System.out.println("file's new name: " + fileObject1.getName());
}
}
測試和設(shè)置文件屬性
/*
* SetterFileAttribute.java
*
* Created on 2006年8月22日, 下午3:51
*
* 測試和設(shè)置文件屬性
*/
package study.iostudy;
import java.io.*;
public class SetterFileAttribute
{
/*
* File類中提供的有關(guān)文件屬性測試方面的方法有以下幾種:
* boolean exists(); 測試當(dāng)前文件對象指示的文件是否存在。
* boolean isFile(); 測試當(dāng)前文件對象是不是文件。
* boolean isDirectory(); 測試當(dāng)前文件對象是不是目錄。
* boolean canRead(); 測試當(dāng)前文件對象是否可讀。
* boolean canWrite(); 測試當(dāng)前文件對象是否可寫。
* boolean setReadOnly(); 將當(dāng)前文件對象設(shè)置為只讀。
* long length(); 獲得當(dāng)前文件對象的長度。
*/
public static void main(String[] args)
{
File dirObject = new File("d:\\mydir");
File fileObject = new File("d:\\mydir\\firstFile.txt");
try
{
dirObject.mkdir();
fileObject.createNewFile();
}catch(IOException e)
{
e.printStackTrace();
}
System.out.println("* * * * * * * * * * * * * * * * * * * * * * * * ");
System.out.println("there are some information about property of file object:");
System.out.println("file object : " + fileObject);
System.out.println("file exist? " + fileObject.exists());
System.out.println("Is a file? " + fileObject.isFile());
System.out.println("Is a directory?" + fileObject.isDirectory());
System.out.println("Can read this file? " + fileObject.canRead());
System.out.println("Can write this fie? " + fileObject.canWrite());
long fileLen = fileObject.length();
System.out.println("file length: " +fileLen);
boolean fileRead = fileObject.setReadOnly();
System.out.println(fileRead);
System.out.println("Can read this file? " + fileObject.canRead());
System.out.println("Can write this fie? " + fileObject.canWrite());
System.out.println("* * * * * * * * * * * * * * * * * * * * * * * * ");
}
}
文件操作方法
/*
* FileOperation.java
*
* Created on 2006年8月22日, 下午4:25
*
* 文件操作方法
*/
package study.iostudy;
import java.io.*;
/*
* 有關(guān)文件操作方面的方法有如下幾種:
* boolean createNewFile(); 根據(jù)當(dāng)前的文件對象創(chuàng)建一個新的文件。
* boolean mkdir(); 根據(jù)當(dāng)前的文件對象生成一目錄,也就是指定路徑下的文件夾。
* boolean mkdirs(); 也是根據(jù)當(dāng)前的文件對象生成一個目錄,
* 不同的地方在于該方法即使創(chuàng)建目錄失敗,
* 也會成功參數(shù)中指定的所有父目錄。
* boolean delete(); 刪除當(dāng)前的文件。
* void deleteOnExit(); 當(dāng)前Java虛擬機(jī)終止時刪除當(dāng)前的文件。
* String list(); 列出當(dāng)前目錄下的文件。
*/
public class FileOperation
* 找出一個目錄下所有的文件
package study.iostudy;
import java.io.*;
public class SearchFile
{
public static void main(String[] args)
{
File dirObject = new File("D:\\aa");
Filter1 filterObj1 = new Filter1("HTML");
Filter2 filterObj2 = new Filter2("Applet");
System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
System.out.println("list HTML files in directory: " + dirObject);
String[] filesObj1 = dirObject.list(filterObj1);
for (int i = 0; i filesObj1.length; i++)
{
File fileObject = new File(dirObject, filesObj1[i]);
System.out.println(((fileObject.isFile())
? "HTML file: " : "sub directory: ") + fileObject);
}
System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
String[] filesObj2 = dirObject.list(filterObj2);
for (int i = 0; i filesObj2.length; i++)
{
File fileObject = new File(dirObject, filesObj2[i]);
System.out.println(((fileObject.isFile())
? "htm file: " : "sub directory: ") + fileObject);
}
}
}
class Filter1 implements FilenameFilter
{
String fileExtent;
Filter1(String extentObj)
{
fileExtent = extentObj;
}
public boolean accept(File dir, String name)
{
return name.endsWith("." + fileExtent);
}
}
class Filter2 implements FilenameFilter
{
String fileName;
Filter2(String fileName)
{
this.fileName = fileName;
字符流處理
* ProcesserCharacterStream.java
* 字符流處理
*
* java.io包中加入了專門用于字符流處理的類,這些類都是Reader和Writer類的子類,
* Reader和Writer是兩個抽象類,只提供了一系列用于字符流處理的接口,不能生成這
* 兩個類的實例。
* java.io包中用于字符流處理的最基本的類是InputStreamReader和OutputStreamWriter,
* 用來在字節(jié)流和字符流之間作為中介。
*
* 下面是InputStreamReader類和OutputStreamWriter類的常用方法:
*
* public InputStreamReader(InputStream in)
* 根據(jù)當(dāng)前平臺缺省的編碼規(guī)范,基于字節(jié)流in生成一個輸入字符流。
* public InputStreamReader(InputStream in, String sysCode)throws UnSupportedEncodingException
* 按照參數(shù)sysCode指定的編碼規(guī)范,基于字節(jié)流in構(gòu)造輸入字符流,如果不支持參數(shù)sysCode中指定的編碼規(guī)范,就會產(chǎn)生異常。
* public OutputStreamWriter(OutputStream out)
* 根據(jù)當(dāng)前平臺缺省的編碼規(guī)范,基于字節(jié)流out生成一個輸入字符流。
* public OutputStreamWriter(OutputStream out, String sysCode) throws UnsupportedEncodingException
* 按照參數(shù)sysCode指定的編碼規(guī)范,基于字節(jié)流out構(gòu)造輸入字符流,如果不支持參數(shù)sysCode中指定的編碼規(guī)范,就會產(chǎn)生異常。
* public String getEncoding()
* 獲得當(dāng)前字符流使用的編碼方式。
* public void close() throws IOException
* 用于關(guān)閉流。
* public int read() throws IOException
* 用于讀取一個字符。
* public int read(char[] cbuf, int off, int len)
* 用于讀取len個字符到數(shù)組cbuf的索引off處。
* public void write(char[] cbuf, int off, int len) throws IOException
* 將字符數(shù)組cbuf中從索引off處開始的len個字符寫入輸出流。
* public void write(int c) throws IOException
* 將單個字符寫入輸入流。
* public void write(String str, int off, int len) throws IOException
* 將字符串str中從索引off位置開始的ltn個字符寫入輸出流。
*
* 此外,為了提高字符流處理的效率,在Java語言中,引入了BufferedReader和BufferWriter類,這兩個類對字符流進(jìn)行塊處理。
* 兩個類的常用方法如下:
* public BufferedReader(Reader in)
* 用于基于普通字符輸入流in生成相應(yīng)的緩沖流。
* public BufferedReader(Reader in, int bufSize)
* 用于基于普通字符輸入流in生成相應(yīng)的緩沖流,緩沖區(qū)大小為參數(shù)bufSize指定。
* public BufferedWriter(Writer out)
* 用于基于普通字符輸入流out生成相應(yīng)的緩沖流。
* public BufferedWriter(Writer out, int bufSize)
* 用于基于普通字符輸入流out生在相應(yīng)緩沖流,緩沖流大小為參數(shù)bufSize指定。
* public String readLine() throws IOException
* 用于從輸入流中讀取一行字符。
* public void newLine() throws IOException
* 用于向字符輸入流中寫入一行結(jié)束標(biāo)記,值得注意的是,該標(biāo)記不是簡單的換行符"\n",而是系統(tǒng)定義的屬性line.separator。
在上面的程序中,我們首先聲明了FileInputStream類對象inStream和
* FileOutputStream類的對象outStream,接著聲明了BufferInputStream
* 類對象bufObj、BufferedOutputStream類對象bufOutObj、
* DataInputStream類對象dataInObj以及PushbackInputStream類對象pushObj,
* 在try代碼塊中對上面這些對象進(jìn)行初始化,程序的目的是通過BufferedInputStream
* 類對象bufInObj和BufferedOutputStream類對象bufOutObj將secondFile.txt
* 文件中內(nèi)容輸出到屏幕,并將該文件的內(nèi)容寫入thirdFile.txt文件中,值得注意的是,
* 將secondFile.txt文件中的內(nèi)容輸出之前,程序中使用
* "System.out.println(dataInObj.readBoolean());" 語句根據(jù)readBoolean()結(jié)果
* 輸出了true,而secondFile.txt文件開始內(nèi)容為“Modify”,和一個字符為M,
* 因此輸出的文件內(nèi)容沒有“M”字符,thirdFile.txt文件中也比secondFile.txt
* 文件少第一個字符“M”。隨后,通過PushbackInputStream類對象pushObj讀取
* thirdFile.txt文件中的內(nèi)容,輸出讀到的字符,當(dāng)讀到的不是字符,輸出回車,將字符
* 數(shù)組pushByte寫回到thirdFile.txt文件中,也就是“ok”寫回文件中。
* 對象串行化
* 對象通過寫出描述自己狀態(tài)的數(shù)值來記錄自己,這個過程叫做對象串行化。對象的壽命通
* 常是隨著生成該對象的程序的終止而終止,在有些情況下,需要將對象的狀態(tài)保存下來,然后
* 在必要的時候?qū)ο蠡謴?fù),值得注意的是,如果變量是另一個對象的引用,則引用的對象也要
* 串行化,串行化是一個遞歸的過程,可能會涉及到一個復(fù)雜樹結(jié)構(gòu)的串行化,比如包括原有對
* 象,對象的對象等。
* 在java.io包中,接口Serializable是實現(xiàn)對象串行化的工具,只有實現(xiàn)了Serializable
* 的對象才可以被串行化。Serializable接口中沒有任何的方法,當(dāng)一個類聲明實現(xiàn)Seriali-
* zable接口時,只是表明該類遵循串行化協(xié)議,而不需要實現(xiàn)任何特殊的方法。
* 在進(jìn)行對象串行化時,需要注意將串行化的對象和輸入、輸出流聯(lián)系起來,首先通過對
* 象輸出流將對象狀態(tài)保存下來,然后通過對象輸入流將對象狀態(tài)恢復(fù)。
public class Test4 {
static MapString, String map = new TreeMapString, String();
static {
map.put("watermelon", "西瓜");
map.put("banana", "香蕉");
map.put("strawberry", "草莓");
map.put("apple", "蘋果");
}
public static void main(String[] args) {
System.out.println("請輸入單詞");
Scanner sc = new Scanner(System.in);
while (sc.hasNext()) {
String str1 = sc.nextLine();
if(str1.equals("退出")){
return;
}
else if (map.containsKey(str1)) {
System.out.println(map.get(str1));
} else{
System.out.println("次單詞為新詞,添加意思");
Scanner sc1 = new Scanner(System.in);
String str2=sc1.nextLine();
map.put(str1, str2);
System.out.println("添加成功。");
}
}
}
}
有道云筆記暫時不支持代碼的排版,這種功能還沒有開發(fā)出來!
你可以看一下官網(wǎng)的說明,或者百度百科一下各個歷史版本的說明,一般如果有排版代碼的功能,肯定會在新版本出來時有說明的。
import java.awt.*; public class TowerPoint //公共類TowerPoint { int x,y; //定義2個int類型的變量 boolean 有盤子; //定義一個boolean類型的變量 Disk 盤子=null; //初始化一個對象"盤子"并賦值為空 HannoiTower con=null; //初始化一個HannoiTower類的對象"con"并賦值為空public TowerPoint(int x,int y,boolean boo) //構(gòu)造函數(shù),有3個參數(shù),x,y,boo { this.x=x; //將參數(shù)賦給當(dāng)前x this.y=y; //將參數(shù)賦給當(dāng)前y有盤子=boo; //將boo賦給"有盤子" } public boolean 是否有盤子() //定義一個返回boolean類型的方法"是否有盤子" { return 有盤子; //返回boolean類型的"有盤子" } public void set有盤子(boolean boo) //set方法,并且參數(shù)為boolean { 有盤子=boo; //將boo賦給有盤子 } public int getX() //取得x方法 { return x; //返回x } public int getY()//取得y方法 { return y; //返回y } public void 放置盤子(Disk 盤子,HannoiTower con) //定義一個有2個參數(shù)的"放置盤子"方法。參數(shù)是Disk類和HannoiTower類 { this.con=con; //當(dāng)前con等于參數(shù)con con.setLayout(null); //調(diào)用on對象的方法setLayout,并設(shè)置為空 this.盤子=盤子; //當(dāng)前盤子等于參數(shù)盤子 con.add(盤子); //con對象的add方法,加入"盤子"對象 int w=盤子.getBounds().width; //定義并給一個int類型的w變量一個值,值為"盤子.getBounds().width" int h=盤子.getBounds().height; //定義并給一個int類型的h變量一個值,值為"盤子.getBounds().height" 盤子.setBounds(x-w/2,y-h/2,w,h);//調(diào)用"盤子"對象的setBounds方法,并把傳遞值 有盤子=true;//boolean類型的對象"有盤子"等于true con.validate(); //調(diào)用con對象的validate方法 } public Disk 獲取盤子() //定義"獲取盤子"方法,方法返回Disk對象 { return 盤子; //返回盤子 } } -----------------------另外說一下,樓主太摳門了?。。。。。。?!只給5分-----------------------
網(wǎng)站標(biāo)題:Java電子辭典筆記代碼,java電子辭典筆記代碼是什么
瀏覽路徑:http://sd-ha.com/article18/hdhegp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、App設(shè)計、營銷型網(wǎng)站建設(shè)、域名注冊、網(wǎng)站制作、網(wǎng)站導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)