早教吧作业答案频道 -->其他-->
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关于文本处理的问题就是...的网友还看了以下:
上海到南京的铁路长度(单位)泰山的高度(单位)金属导线的直径(单位)配玻璃的尺寸(单位)人的身高跳 2020-04-13 …
导出单位是由基本单位组合而成的,则下列说法中正确的是()A.加速度的单位是m/s2,是由m、s两个 2020-05-14 …
科学初一机械运动的问题科学上用速度来表示物体 .它的单位由 单位和 单位组成.在国际单位制中,速度 2020-05-16 …
智悦人生保单账户价值会随着保障成本的收取、保单账户价值的部分领取而()(单选题)A、增加B、减少 2020-05-22 …
将60个小球染成各种颜色(每个小球都染成单一色),只要任意取10个小球至少有3个是同样颜色,那么这 2020-07-16 …
密度的单位是由单位和单位复合而成的,国际单位制中,密度的单位是,还有一种常用的密度单位是,比较这两 2020-08-02 …
Java关于文本处理的问题就是在argument输入一系列单词按单词长度降序排列之后取每个单词的同一 2020-10-31 …
几个理科问题(数理化)数学:“单位向量的长度都相等”这句话对吗?虽说单位向量的模是1我知道但我想如果 2020-11-20 …
选取适当的长度为单位长度,并且(),统一数轴的单位长度要一致,不能长短不一. 2020-11-26 …
中国著名体操员童非,首次在单杠项目上实现了“单臂大回环”即用一只手抓住单杠,伸展身体,以单杠为轴做圆 2020-11-28 …