java 写一个方法返回值是Map类型
写一个方法返回值是Map类型:(通过控制台写进去一行字符,分别统计出其英文字母,空格,数字和其它字符放到对应的list里面,最终把list放到Map里并返回)...
写一个方法返回值是Map类型:(通过控制台 写进去一行字符,分别统计出其英文字母,空格,数字和其它字符 放到对应的list里面,最终把list放到Map里并返回)
展开
展开全部
import java.util.*;
public class demo1 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String arr = in.nextLine();
System.out.println(demo(arr));
}
public static Map<String, List> demo (String arr )
{
String[] arrs = arr.split(" ");
Map<String,List> map = new HashMap<>();
List<String> list1 = new LinkedList<>();
List<String> list2 = new LinkedList<>();
List<String> list3 = new LinkedList<>();
List<String> list4 = new LinkedList<>();
for (int i=0;i<arr.length();i++){
if ((arr.charAt(i)>='a'&&arr.charAt(i)<='z')||(arr.charAt(i)>='A'&&arr.charAt(i)<='Z')){
Character character = arr.charAt(i);
list1.add(character.toString());
}
else if ('0'<=arr.charAt(i)&&'9'>=arr.charAt(i)){
Character character = arr.charAt(i);
list3.add(character.toString());
}
else if (' '==arr.charAt(i)){
list2.add(" ");
}
else {
Character character = arr.charAt(i);
list4.add(character.toString());
}
}
map.put("character",list1);
map.put("space",list2);
map.put("other",list4);
map.put("number",list3);
return map;
}
}
刚刚给你写了一个简单的例子,其实正则比较方便
展开全部
在Java中,定义方法返回Map跟返回其他类型一样,只需要指定方法的返回类型为Map即可。
具体实现如下:
public Map<String,Object> doSomething(){...}
Map是Java中的一个键值对接口,开发中经常会用到。Map接口提供三种collection
视图,允许以键集、值集或键-值映射关系集的形式查看某个映射的内容。映射顺序 定义为迭代器在映射的 collection
视图上返回其元素的顺序。Map接口的实现子类有很多,其中较为常用的有HashMap, Hashtable,TreeMap,ConcurrentHashMap等。
具体实现如下:
public Map<String,Object> doSomething(){...}
Map是Java中的一个键值对接口,开发中经常会用到。Map接口提供三种collection
视图,允许以键集、值集或键-值映射关系集的形式查看某个映射的内容。映射顺序 定义为迭代器在映射的 collection
视图上返回其元素的顺序。Map接口的实现子类有很多,其中较为常用的有HashMap, Hashtable,TreeMap,ConcurrentHashMap等。
追问
能发下代码吗......
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public static void main(String[] arr){
String arg="aaaa 12345测试";
//字母列表
List<Object> zmList = new ArrayList<Object>();
//空格列表
List<Object> kgList = new ArrayList<Object>();
//数字列表
List<Object> szList = new ArrayList<Object>();
//其他
List<Object> otherList = new ArrayList<Object>();
for(int i=0;i<arg.length();i++){
char at=arg.charAt(i);
if ((at > 'A' && at < 'Z') || (at > 'a' && at < 'z')){
zmList.add(at);
}else if(Character.isDigit(at)){
szList.add(at);
}else if(Character.isSpace(at)){
kgList.add(at) ;
}else{
otherList.add(at);
}
}
Map<String,List> retMap = new HashMap<String,List>();
retMap.put("zmList", zmList);
retMap.put("kgList", kgList);
retMap.put("szList", szList);
retMap.put("otherList", otherList);
}
String arg="aaaa 12345测试";
//字母列表
List<Object> zmList = new ArrayList<Object>();
//空格列表
List<Object> kgList = new ArrayList<Object>();
//数字列表
List<Object> szList = new ArrayList<Object>();
//其他
List<Object> otherList = new ArrayList<Object>();
for(int i=0;i<arg.length();i++){
char at=arg.charAt(i);
if ((at > 'A' && at < 'Z') || (at > 'a' && at < 'z')){
zmList.add(at);
}else if(Character.isDigit(at)){
szList.add(at);
}else if(Character.isSpace(at)){
kgList.add(at) ;
}else{
otherList.add(at);
}
}
Map<String,List> retMap = new HashMap<String,List>();
retMap.put("zmList", zmList);
retMap.put("kgList", kgList);
retMap.put("szList", szList);
retMap.put("otherList", otherList);
}
追问
控制台输入不了
追答
BufferedReader br = new BufferedReader(new InputStreamReader(System.in ));
//java.io.InputStreamReader继承了Reader类
String read = null;
System.out.print("输入数据:");
try {
read = br.readLine();
} catch (IOException e) {
e.printStackTrace();
}
String arg=read;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
说的真么清楚了还不会?
追问
1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询