導航:首頁 > 編程語言 > java字典程序

java字典程序

發布時間:2022-04-29 13:52:54

Ⅰ 用java編寫程序,對分行輸入的若干字元串按字典序(由小到大)進行排序並輸出。

package special7_2;
import java.util.*;
public class Special7_2 {

public static void main(String[] args) {
// TODO Auto-generated method stub
String str="";
Scanner scan=new Scanner(System.in);
ArrayList<String> arraylist=new ArrayList<String>();
while(!str.equals("#")){
str=scan.nextLine();
arraylist.add(str);
}
arraylist.remove("#");
Object[]arr=arraylist.toArray();
for(int i=0;i<arraylist.size()-1;i++){
//String str1=(String)arr[i];
for(int j=0;j<arraylist.size()-1-i;j++){
if(((String) arr[j]).compareTo((String) arr[j+1])>0){
//swap(arr,i,j);
String temp;
temp=(String) arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
for(int i=0;i<arraylist.size();i++){
//String str1=(String)arr[i];
System.out.println(arr[i]);
}
}

/*private static void swap(Object[] arra, int i, int j) {
// TODO Auto-generated method stub
String temp = (String) arra[i];
arra[i] = arra[j];
arra[j] = temp;
}*/

}

Ⅱ 5種水果,用java來按照字典順序排列輸出

public class Fruit {
String[] fruits=new String[5];
public void inputfruit(){
Scanner input=new Scanner(System.in);
for(int i=0;i<fruits.length;i++){
System.out.print("請輸入第"+(i+1)+"種水果:");
fruits[i]=input.next();
}
}
public String[] getNames(){
Arrays.sort(fruits);
return fruits;
}

}

public static void main(String[] args) {
// TODO Auto-generated method stub
Fruit sg=new Fruit();
String[] newFruits=new String[5];
sg.inputfruit();
newFruits=sg.getNames();
System.out.println("這些水果在字典種出現的順序是:");
for(int i=0;i<newFruits.length;i++){
if(newFruits[i]!=null){
System.out.print(newFruits[i]+"\t");
}
}

}

Ⅲ 如何使用java編一個字典

省力點的就直接調用第三方翻譯介面,然後可以保存到本地資料庫,本地資料庫也提供維護功能。 簡單點的就只自己維護資料庫,這是個人意見哦

Ⅳ 求一個java排序的程序!字典順序的!

importjava.util.Arrays;
importjava.util.Scanner;


//必須實現Comparable介面
<Word>{

privatefinalStringword;

publicStringgetWord(){
returnword;
}

//構造器什麼的無視吧
publicWord(Stringword){
if(word==null)
thrownewNullPointerException("不可以創造空單詞!");
this.word=word;
}

//實現compareTo方法.主要的排序思路在這里
@Override
publicintcompareTo(Wordtarget){
if(target==null)
return1;

if(target.getWord().equalsIgnoreCase(getWord()))
return0;

char[]selfLetters=getWord().toLowerCase().toCharArray();
char[]targetLetters=target.getWord().toLowerCase().toCharArray();
intselfLength=selfLetters.length;
inttargeLength=targetLetters.length;
intminLength=Math.min(selfLength,targeLength);

for(intindex=0;index<minLength;index++){
if(selfLetters[index]>targetLetters[index]){
return1;
}
elseif(selfLetters[index]<targetLetters[index]){
return-1;
}
continue;
}

returnselfLength>targeLength?1:-1;
}

//重寫ToString方法以便列印輸出
@Override
publicStringtoString(){
returnword;
}

//主方法.用來查看效果
publicstaticvoidmain(String[]args){

intsize=5;//測試用的數組長度(單詞數);
//創造一個Word的數組用來保存輸入的單詞
Word[]words=newWord[size];
Scannersc=newScanner(System.in);
for(inti=0;i<size;i++)
{
System.out.println("請輸入第"+(i+1)+"個單詞");
words[i]=newWord(sc.nextLine());
}
sc.close();//關閉流

System.out.println("排序結果為:");

//使用Arrays.sort方法排序,sort對自動調用你的compareTo方法來比較
Arrays.sort(words);

//列印出結果
System.out.println(Arrays.toString(words));
}
}

這是我剛寫的。測試結果還可以。邏輯可能不是很嚴謹 不過作為作業應該應付足夠了

Ⅳ java字典怎麼使用

Map可以實現類似資料庫的功能。比如一個人的姓名和年齡信息你可以存在一個Map裡面,就像這樣: Map map = new HashMap(); map.put("張三", 40)

Ⅵ 如何用java中的哈希表類做一個查字典程序

比如:單詞word,word的解釋是:單詞
Hashtable dictionary = new Hashtable();
dictionary.put("word", "單詞");
查單詞時:dictionary.get("word");

Ⅶ java我這個字典的程序哪裡錯了

已修改,復制粘貼即可

importjava.awt.BorderLayout;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjava.sql.Connection;
importjava.sql.DriverManager;
importjava.sql.ResultSet;
importjava.sql.SQLException;
importjava.sql.Statement;
importjavax.swing.BorderFactory;
importjavax.swing.JButton;
importjavax.swing.JFrame;
importjavax.swing.JPanel;
importjavax.swing.JScrollPane;
importjavax.swing.JTextArea;
importjavax.swing.JTextField;


{
=1L;
JTextFieldtxf=newJTextField(20);
JTextAreajt=newJTextArea();
JButtonbtn1=newJButton("查詢");

Zidian()
{
setTitle("Search");
setBounds(400,300,450,350);
JPanelpnl4=newJPanel();
pnl4.setBorder(BorderFactory.createTitledBorder("Search"));
pnl4.add(txf);
pnl4.add(btn1);
btn1.addActionListener(this);
JPanelpnl5=newJPanel(newBorderLayout());
pnl5.setBorder(BorderFactory.createTitledBorder("Result"));
jt.setWrapStyleWord(true);
jt.setLineWrap(true);
pnl5.add(newJScrollPane(jt),BorderLayout.CENTER);
JPanelall=newJPanel();
all.setLayout(newBorderLayout());
all.add(pnl4,BorderLayout.NORTH);
all.add(pnl5,BorderLayout.CENTER);
add(all);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}

publicvoidactionPerformed(ActionEvente)
{
if(e.getSource()==btn1)
{
Stringstr=txf.getText();
Stringsql="select*fromchinesewherecharsoundlike'%"+str+"%'";
Connectionconn=null;
Statementstmt=null;
ResultSetrs=null;
try
{
Class.forName("com.mysql.jdbc.Driver");
conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/japan?user=root&password=123");
stmt=conn.createStatement();
rs=stmt.executeQuery(sql);
jt.setText("");
while(rs.next())
{
jt.append(newString(rs.getString("charname").getBytes("iso-8859-1"),"gb2312")+" ");
}
}
catch(Exceptioneq)
{
eq.printStackTrace();
}
finally
{
try
{
if(null!=rs)
{
rs.close();
}
if(null!=stmt)
{
stmt.close();
}
if(null!=conn)
{
conn.close();
}
}
catch(SQLExceptionignore)
{}
}
}
}

publicstaticvoidmain(String[]args)
{
newZidian();
}
}

Ⅷ 請問怎麼用JAVA編寫英漢字典程序

你要源碼的話,200分是不夠的。如果你給我1000塊錢,我會幫你把這個程序完完全全的寫出來。
反正沒什麼難度,就是體力活,大概3天時間可以寫完。1000塊錢剛好是我三天的工資。
----------
我不要你的分,但可以告訴你,其實這個除了繁瑣,沒有任何技術難度。

第一,在資料庫裡面將字典錄入,一張表就好
第二,編寫查詢界面,查詢資料庫裡面的表,找出對應的結果。
第三,輸入一個單詞的一部分,系統提示一系列可能的單詞,所白了也是一個查詢資料庫,沒敲一個鍵,系統檢測當前已經輸入的字,然後取資料庫裡面找到前端匹配的所有單詞的列表,顯示給用戶。

如果不用資料庫,就用xml文件來存儲也是可以的。

Ⅸ 輸入5種水果的英文名稱,用java編寫一個程序,輸出這些水果名稱按照字典出現的先後循序輸出

一、思路:

1、建立一個String數組,用來存儲用戶輸入的水果名字。

2、按字典出現的先後順序即比較字元串大小。可以使用到String對象的compareTo()方法。

3、對比大小後,升序輸出。

二、實現:

1、定義輸入水果名字的個數,用來確定數組的大小,修改此值可以修改數組的大小。

2、用戶輸入,用循環實現接收,並存儲到數組中。

3、將數據對比大小,按升序排列。使用最簡單的冒泡排序法(麻煩易錯)或Java的工具類(簡單高效)。

4、輸出排序後的數組。

實現代碼:

//java代碼:輸入五種水果的英文,按字典出現的先後順序循環輸出。
importjava.util.Arrays;
importjava.util.Scanner;

publicclassCompareTest{

/**
*一、思路:
*1、建立一個String數組,用來存儲用戶輸入的水果名字。
*2、按字典出現的先後順序即比較字元串大小。可以使用到String對象的compareTo()方法。
*3、對比大小後,升序輸出。
*二、實現:
*1、定義輸入水果名字的個數,用來確定數組的大小,修改此值可以修改數組的大小。
*2、用戶輸入,用循環實現接收,並存儲到數組中。
*3、將數據對比大小,按升序排列。使用最簡單的冒泡排序法(麻煩易錯)或Java的工具類(簡單高效)。
*4、輸出排序後的數組。
**/

//定義用戶輸入數據的個數,修改此值可以修改個數及數據接收數組的大小
publicstaticfinalintCOUNT=5;

publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub

//定義接收用戶輸入數據的數組
String[]fruits=newString[COUNT];

Scannerreader=newScanner(System.in);

//接收用戶輸入的數據
System.out.println("請輸入"+COUNT+"個水果的英文名字:");
for(inti=0;i<COUNT;i++){
fruits[i]=reader.next();
}
reader.close();

//比較數組中數據的大小,並按升序排列。冒泡法
for(inti=1;i<=(COUNT-1);i++){
for(intn=0;n<(COUNT-i);n++){
if(fruits[n].compareTo(fruits[n+1])>0){
Stringtemp=null;
temp=fruits[n];
fruits[n]=fruits[n+1];
fruits[n+1]=temp;
}
}
}
//不使用冒泡排序,使用java自帶的工具類,一句話即可,排序由底層自動完成
//Arrays.sort(fruits);

//輸出排序後的數組,即為字典中的出現順序
System.out.println("這些水果的英文名在字典中出現的順序是:");
for(inti=0;i<COUNT;i++){
System.out.print(fruits[i]+"");
}
System.out.println();

}

}

運行結果圖:

應注意:程序中使用的比較方式是區分大小寫的,如果是不區分大小寫的比較方式,應使用compareToIgnoreCase()方法。

Ⅹ 如何用JAVA開發《英漢字典》程序

1. 由於單詞本固定,無需動態改變,用String數組就可以了,不用map也非常快了。
2. 將各個單詞提前排序,查詢時就可以用2分法,復雜度很低。
3. 自己估算一下單詞數量,決定是否一次讀入內存。
4. 只用到數據結構和演算法方面很基礎的東西,沒什麼特別的。可能java界面編程需要稍稍入門即可。netbeans做界面也很好用,接近於vb了。

閱讀全文

與java字典程序相關的資料

熱點內容
數學奇跡神奇運演算法 瀏覽:359
大廠的程序員的水平如何 瀏覽:700
遺傳演算法入門經典書籍 瀏覽:878
源碼炮台腳本 瀏覽:620
在位編輯命令 瀏覽:347
曲式分析基礎教程pdf 瀏覽:14
php生成靜態html頁面 瀏覽:964
怎麼分割pdf 瀏覽:812
壓縮垃圾報警器 瀏覽:629
小公司一般都用什麼伺服器 瀏覽:968
java獲取時間gmt時間 瀏覽:820
為什麼csgo一直連接不到伺服器 瀏覽:504
安卓登ins需要什麼 瀏覽:836
機器人演算法的難點 瀏覽:226
全自動化編程 瀏覽:727
程序員高薪限制 瀏覽:693
壓縮圖片壓縮 瀏覽:75
美國發明解壓魔方 瀏覽:302
電腦怎麼備案網上伺服器 瀏覽:515
旅行商問題Python寫法 瀏覽:953