怎样比较Java字符串长度
答案:5 悬赏:50
解决时间 2021-01-25 09:14
- 提问者网友:聂風
- 2021-01-25 05:29
怎样比较Java字符串长度
最佳答案
- 二级知识专家网友:杯酒困英雄
- 2021-01-25 07:04
import java.util.*; public class Test { public static void main(String[] args) { Map src=new Hashtable(); System.out.println("请输入字符串#最后以空格结束输入!"); Scanner input=new Scanner(System.in); String str=input.nextLine(); while(!str.equals(" ")) { map.put(str.length(), str); str=input.nextLine(); } Set key=map.keySet(); int[] sort=new int[key.size()]; int i=0; for(int num:key) { sort[i]=num; i++; } Arrays.sort(sort); System.out.println("最长字符串是:"+map.get(sort[sort.length-1])); } }
求采纳
求采纳
全部回答
- 1楼网友:蕴藏春秋
- 2021-01-25 10:02
我暂时保留我的看法!
- 2楼网友:罪歌
- 2021-01-25 09:22
import java.io.Console; public class Test { private static String psLongestString = ""; public static void main(String[] args) throws Exception { Console console = System.console(); // 获得Console实例对象 String lsInputString = new String(console.readLine("输入月份:")); // 读取整行字符 CheckLongestString(lsInputString); while (!lsInputString.trim().isEmpty()) { lsInputString = new String(console.readLine("输入月份:")); CheckLongestString(lsInputString); } console.printf("最长的字符串为:" + psLongestString + "\n"); // 输出结果 } private static void CheckLongestString(String asInput) { if (asInput.length() > psLongestString.length()) { psLongestString = asInput; } } } ps. 本程序在Jdk6环境下运行通过,请确保你的环境是1.6否则不支持本程序中的System.console。如果是Jdk6以下的版本,那么读取控制台输入流的方法请参考楼上那位朋友的做法,比较原始 :),不过向下兼容。如果还有疑问可以向我提问,乐意帮助。
- 3楼网友:孤独的牧羊人
- 2021-01-25 09:06
楼上给出的方法已经很多了,只是少了一个判断,楼主似乎也没考虑到,就是当输入的最大长度字符存在多个的时候,是不是应该将所有的最大长度字符列出呢,感觉这样比较全面。 例如输入的分别是: aaaaaaa bbbbbbbbb ccccccccc ddddddddd eeeee 结果最大长度的字符有3个。所以我添加了一个判断,至于方法比较普通,只是说明问题。 import java.util.ArrayList; import java.util.Scanner; public class Testdemo { public static void main(String[] args){ String str="";//存储输入的字符串 String maxStr="";//最大字符串 ArrayList<String> equalstr=new ArrayList<String>();//相等的字符串集合 Scanner input =new Scanner(System.in); ArrayList<String> arrayStr=new ArrayList<String>();//存储字符串集合 System.out.println("input:"); while(true){ System.out.print("请输入:"); str=input.nextLine(); arrayStr.add(str); if(str.equals(" ")){ break; } } maxStr=arrayStr.get(0);//默认第一个元素为最大值 //比较所有元素,找出最大值 for(int i=0;i<arrayStr.size()-1;i++){ if(arrayStr.get(i+1).length()>maxStr.length()){ maxStr=arrayStr.get(i+1); } else if(arrayStr.get(i+1).length()==maxStr.length()){ equalstr.add(arrayStr.get(i+1)); } } System.out.println("output:"); String s=""; if(equalstr.size()>0){ for(int j=0;j<equalstr.size();j++){ if(equalstr.get(j).length()==maxStr.length()){ s=s+equalstr.get(j)+" and "; } } System.out.println("最长字符:"+s+maxStr); } else{ System.out.println("最长字符:"+maxStr); }} }
- 4楼网友:不想翻身的咸鱼
- 2021-01-25 07:38
用一个集合保存每次用户输入的字符串 当输入空格后,就开始便利集合中的每一个字符串,然后对比获得最大长度就行了。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯