导航:首页 > 编程语言 > 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字典程序相关的资料

热点内容
PC机与单片机通讯 浏览:674
二级加密图 浏览:113
压缩机异音影响制冷吗 浏览:711
德斯兰压缩机 浏览:490
程序员太极拳视频 浏览:531
网上购买加密锁 浏览:825
安卓为什么软件要隐私 浏览:83
虚拟主机管理源码 浏览:811
java图形图像 浏览:230
单片机输出口电平 浏览:486
java配置数据库连接 浏览:479
java多态的体现 浏览:554
java的split分隔符 浏览:128
跪着敲代码的程序员 浏览:238
web和php有什么区别 浏览:120
加密的电梯卡怎么复制苹果手机 浏览:218
warez压缩 浏览:137
黑马程序员培训机构官网天津 浏览:904
mainjavasrc 浏览:59
如何买服务器挖矿 浏览:292