早教吧作业答案频道 -->其他-->
Java关于文本处理的问题就是在argument输入一系列单词按单词长度降序排列之后取每个单词的同一个位置的字母组成一个新的单词在输出出来例子是这样子的:"Everyonestartsasawhitebelt"会
题目详情
Java关于文本处理的问题
就是在argument 输入一系列单词 按单词长度降序排列之后 取每个单词的同一个位置的字母组成一个新的单词在输出出来 例子是这样子的:
"Everyone starts as a white belt" 会先排序为 (Everyone,starts,white,belt,as,a).
然后取每个单词同一个位置的字母在组成一个新的单词
第一个字母组成的单词就是:Eswbaa
vthes
eail
rrtt
yte
os
n
e
最后输出就是 "Eswbaa vthes eail rrtt yte os n e" 、
现在小弟有两个问题 第一个是怎么用降序排列 我用的是Array.sort为升序排列的 第二个是取每个单词同一个位置的字母再组成新的单词这一点不大懂 能给个完整的code有加分
就是在argument 输入一系列单词 按单词长度降序排列之后 取每个单词的同一个位置的字母组成一个新的单词在输出出来 例子是这样子的:
"Everyone starts as a white belt" 会先排序为 (Everyone,starts,white,belt,as,a).
然后取每个单词同一个位置的字母在组成一个新的单词
第一个字母组成的单词就是:Eswbaa
vthes
eail
rrtt
yte
os
n
e
最后输出就是 "Eswbaa vthes eail rrtt yte os n e" 、
现在小弟有两个问题 第一个是怎么用降序排列 我用的是Array.sort为升序排列的 第二个是取每个单词同一个位置的字母再组成新的单词这一点不大懂 能给个完整的code有加分
▼优质解答
答案和解析
package test;
import java.util.Arrays;
import java.util.Comparator;
public class A1
{
public static String done ( String str )
{
String[] strs = str.split ("\\s+");
Arrays.sort (strs, new Comparator ()
{
@Override
public int compare ( String o1, String o2 )
{
if (o1.length () > o2.length ())
{
return -1;
}
else if (o1.length () < o2.length ())
{
return 1;
}
else
{
return 0;
}
}
});
String all = "";
int max = strs[0].length ();
for ( int j = 0; j < max; j++ )
{
String result = "";
for ( int i = 0; i < strs.length; i++ )
{
if (strs[i].length () <= j)
{
break;
}
result += strs[i].charAt (j);
}
if (j != max - 1)
{
result += " ";
}
all += result;
}
return all;
}
public static void main ( String[] args )
{
String str = "Everyone starts as a white belt";
System.out.println (done (str));
}
}
import java.util.Arrays;
import java.util.Comparator;
public class A1
{
public static String done ( String str )
{
String[] strs = str.split ("\\s+");
Arrays.sort (strs, new Comparator
{
@Override
public int compare ( String o1, String o2 )
{
if (o1.length () > o2.length ())
{
return -1;
}
else if (o1.length () < o2.length ())
{
return 1;
}
else
{
return 0;
}
}
});
String all = "";
int max = strs[0].length ();
for ( int j = 0; j < max; j++ )
{
String result = "";
for ( int i = 0; i < strs.length; i++ )
{
if (strs[i].length () <= j)
{
break;
}
result += strs[i].charAt (j);
}
if (j != max - 1)
{
result += " ";
}
all += result;
}
return all;
}
public static void main ( String[] args )
{
String str = "Everyone starts as a white belt";
System.out.println (done (str));
}
}
看了Java关于文本处理的问题就是...的网友还看了以下:
thesaurus字典推荐叫这个名字的字典有很多可是不知道哪种比较好我已经买了m-w的同义词反义词的 2020-03-31 …
关于司马迁《一鸣惊人》的一些问题,1.解释翻译下列加的词:沉湎不治奋兵而出国且危亡威行三十六年2. 2020-04-06 …
C语言控制语句关键字有12个,break,case ,continue……是什么意思?(不要你列出 2020-05-16 …
AB两地相距400km,一列慢车从A地出发,速度为80km/h,一列快车从B地出发,速度为120k 2020-05-16 …
列出代词,be动词,特殊名词复数25个例如:those-thatis-areman-men在写25 2020-05-20 …
下列语句的括号中是补出的词语,补出后不符合文意的一项是( )A.目中有疵,不害于视,(则)不可灼也B 2020-05-25 …
请使用[说明]中给出的词语,将销售事件序列图中的(A)~(D)空缺处的内容填写完整。 2020-05-26 …
看下面的造句从下列给出的词语中选择2个写一段通顺的话,注意一种写词手法,50~80字以内.征兆、姿 2020-06-05 …
我想买本《现代汉语词典》(是书,不是电子的),但不知那个出版社出的词典好?知道哪些好的推荐一下.我 2020-06-06 …
宋词和元曲1.宋词(1)词是一种新体诗歌,句子有长有短,便于歌唱,⑤时已出现,经过五代到两宋,有很 2020-06-09 …