问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java中怎样把输入的基本英文单词按首字母顺序排列?2

发布网友 发布时间:2023-11-06 16:47

我来回答

4个回答

热心网友 时间:2024-10-23 03:35

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;

/**
 * 规则:大写字母前于小写字母
 * 
 * @author Administrator
 *
 */
public class SortWords {

private static final String[] array = { "A", "B", "C", "D", "E", "F", "G",
"H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T",
"U", "V", "W", "X", "Y", "Z" };

public static void main(String[] args) {
SortWords sw = new SortWords();
List<String> words = new ArrayList<String>();
words.add("book");
words.add("ear");
words.add("alert");
words.add("choice");
words.add("name");
words.add("memery");
words.add("fight");
words.add("call");
words.add("joy");
List<String> list = sw.sort(words, "forward");
for (String str : list) {
System.out.println(str);
}
}

public List<String> sort(List<String> words, String type) {
List<Word> list = new ArrayList<Word>();
List<String> res = new ArrayList<String>();
for (String word : words) {
Word w = indexNum(word);
list.add(w);
}
switch (type) {
case "forward":
Collections.sort(list, new Forward());
for (Word w : list) {
res.add(w.getContent());
}
break;
case "back":
Collections.sort(list, new Back());
for (Word w : list) {
res.add(w.getContent());
}
break;
}

return res;
}

public Word indexNum(String word) {
String[] letters = word.split("");
String res = "";
Word w = new Word();
String letter = word.substring(0, 1);
for (int i = 0; i < array.length; i++) {
String pattern = array[i];
if (letter.equalsIgnoreCase(pattern)) {
res += i;
break;
}
}
w.setContent(word);
w.setIndexNum(Integer.parseInt(res));
return w;
}

private class Forward implements Comparator {
@Override
public int compare(Object arg0, Object arg1) {
Word w1 = (Word) arg0;
Word w2 = (Word) arg1;
int flag = w1.getIndexNum() - w2.getIndexNum();
return flag;
}
}

private class Back implements Comparator {
@Override
public int compare(Object arg0, Object arg1) {
Word w1 = (Word) arg1;
Word w2 = (Word) arg0;
int flag = w1.getIndexNum() - w2.getIndexNum();
return flag;
}
}
}

class Word {
private String content;

private Integer indexNum;

public String getContent() {
return content;
}

public void setContent(String content) {
this.content = content;
}

public Integer getIndexNum() {
return indexNum;
}

public void setIndexNum(Integer indexNum) {
this.indexNum = indexNum;
}

}

热心网友 时间:2024-10-23 03:35

用list集合试试。list集合是里放的是有顺序并且重复的东西。。

热心网友 时间:2024-10-23 03:36

java中把排序查找等一系列算法都封装再一个叫collections的类里面有了,所以你把输入的字母存在数组或其他集合中,然后直接一句collections.sort();就排好了,你参考javaAPI中对这个类的详解会更吃惊的,呵呵呵

热心网友 时间:2024-10-23 03:36

ASC码是按字母序的 所以你可以用asc码来排序
java中怎样把输入的基本英文单词按首字母顺序排列?

import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util.List;/** * 规则:大写字母前于小写字母 * * @author Administrator * */public class SortWords {private static final String[] array = { "A", "B", "C", "D", "E", "F", "...

java中怎么对英文字母进行排序?

在java中对英文字母进行比较的时候,在java虚拟机中,他首先会转换成ASII来进行比较,所以可以直接写,如果是大写和小写的比较的话,大写要加上一定的数字,才能进行比较,如果嫌麻烦,你也可以将大写转化成小写进行比较,采用冒泡法排序吧

Java中类的命名规范?

1. 文件名由英文单词组成,每个单词的首字母大写,最好不要超过4个单词,如:ShipOrder.java。2. Java文件的文件名要与程序中的public类名相同。3. Servlet文件要以Servlet作为结尾,如:AddCompanyServlet.java。三、类名:每个单词的首字母大写。同上。四、变量名。1. class变量的命名:变量的名字必...

JAVA通过数组按首字母排序怎么做?

自己封装的一个工具类,可以将汉字按照拼音的首字母排序,支持对Model和字典排序.只能对首字母排序,不支持第二个字母, 实现的原理就是创建一个A-Z的数组,数组中的元素是字典,字典中有两个元素,一个是title,就是当前的首字母 A-Z中的一个,另一个是保存当前title对应的元素的数组,对传入的数组进行遍...

JAVA编程输入三个名字按字母顺序自动排序

public static void main (String [] args){List&lt;String&gt; list = new ArrayList&lt;String&gt;();Scanner scan = new Scanner(System.in);System.out.println("Please input the first name: ");list.add(getName(scan.next(),"first"));System.out.println("Please input the second name: ");...

Java中让用户随机输入一串名字并按照字母顺序输出

import java.util.Scanner;public class Test {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("输入一组名字: ");String s = sc.nextLine();String[] strs = s.split(" ");String temp = "";for(int i = 0; i &lt; strs.length;...

JAVA通过数组按首字母排序

import java.util.Arrays;public class Test { public void sortStringArray() { String[] arrayToSort = new String[] { "Oscar", "Charlie", "Ryan","Adam", "David","aff","Aff" };System.out.println();System.out.println("字符型数组排序,排序前:");for (int i = 0; i &lt; ...

java 中有城市类 存在arraylist 怎么让它按名字首字母排序

import java.util.ArrayList;import java.util.Comparator;public class ListDemo {public static void main(String[] args) {ArrayList&lt;String&gt; city = new ArrayList&lt;String&gt;();city.add("Jonesboro");city.add("Chaohu");city.add("LittleRock");city.add("bridgeport");city.add("Rome");city...

java编程,输入一段英文字母,将每个单词的首字母转换为大写字母。

import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class TTTest { public static void main(String args[]) { try { BufferedReader in = new BufferedReader(new InputStreamReader(System.in));String s = in.readLine();StringBuffer s1 = ...

编写一个java程序,完成以下功能: 1) 声名为s的string对象,并使它的内容...

System.out.println("将单词倒序排列:");str=s.trim();while(str.lastIndexOf(' ')!=-1){ int index=str.lastIndexOf(' ');System.out.print(str.substring(index+1,str.length())+" ");str=str.substring(0,index);} System.out.println(str);System.out.println("升序排列各个单词...

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
文件密使无法恢复解密,请高手帮忙 加密文件打不开了,请教高手..急需用那些文件 跪求电脑高手帮忙解决文件加密问题,我把所有积分给他。 我的优盘是联想的,用自带的加密软件加密后,忘了密码,请教高手,怎么解密... pe pb是什么 抱着柴火去火跟前猜谜语 关于租用办公室房产税如何计算与缴纳的问题 一个人抱着柴火前方是火是打一成语的谜语 ...前男友跟别的女人抱一起的时候,放的背景纯音乐出自哪里 ...从前男友家出来后被阿苏接上车,在车上的背景音乐是什么,在哪里有下... U盘里面文件打不开了.!求大神支招 U盘打不开了,里面有自己很重要的资料,求大神帮忙。(在很多电脑上试了... 汽车的蓝底白字牌照和黄底黑字牌照有什么不同啊?9 au文件打开时错误怎么办?1 已知三角形ABC的三个顶点A(-5,0),B(3,-3)C(...2 java 单词排序问题1 安利皇后 锅具价格是多少?61 人民广场是圆形的的,张爷爷正好迈了628步,每步0.5米,广场面积是多少 权盟麦克风r2p怎么把外放关了 一个手机二个怎么弄 像姹紫嫣红这样的词语 要离开了,对公司说几句感谢词,怎么说漂亮呢27 公司员工离职感言怎么写24 我的AU不能打开,打开时会出现一个错误窗口!!! 已知三角形ABC的三个顶点分别是A(-5,0),B(3,-3... 两部手机如何登录同一个 所得税税负率低,税务局肯定会来查吗5 企业所得税税负率如何计算,278 一般来说一个企业的税负大概是多少?380 我是个学生,看到威客类的网赚。但是我觉得上面竞争太激烈了,很...1 我的邮政网银在支付的时候让我插入 uk,为什么我插入了却读不... 魔幻粒子3d彩蛋如何下载 五行属性是木的汉字有哪些10 有方法可以通过直接加好友吗?6 耐克登月9真假求鉴定 adobe premiere 6.5导入avi文件时失败,说“不支持的压缩方式”··怎么... 华为怎么下载couplegame 索尼RX100M6拍视频清晰吗,最近想入手一个拍照录像两用效果好的机... 刚毕业就结婚是怎样一种体验? 第一次海湾战争时伊拉克的装备27 海湾战争之前伊拉克是不是很强18 令我难忘的一件事500字作文3948 我最难忘的一件事作文 500字22647 梦见穿红色衣服222 安利皇后锅具是哪一年生产的12 怎么让两部手机同时登录一个??? java 字母排列问题求解? 已知三角形ABC的顶点为A(2,4)B(0,-2)C(-2,...45 宗申200水冷式不水啥原因? 今天刚买的三星手机,怎么qq下载了安装了,显示不了