导航:首页 > 编程语言 > javahashmapfor

javahashmapfor

发布时间:2022-09-19 18:25:00

java中hashmap的应用,本人小白,这题要咋搞

importjava.util.HashMap;
importjava.util.Map;

publicclasswork{
publicstaticvoidmain(String[]args){
classStudent{//定义内部类Student
privateStringnum;//学号
privateStringname;//名称
privateintage;//年龄

Student(){
}//无参构造方法

Student(Stringnum,Stringname,intage){//有参构造方法
this.num=num;
this.name=name;
this.age=age;
}

publicStringgetNum(){
returnnum;
}

publicvoidsetNum(Stringnum){
this.num=num;
}

publicStringgetName(){
returnname;
}

publicvoidsetName(Stringname){
this.name=name;
}

publicintgetAge(){
returnage;
}

publicvoidsetAge(intage){
this.age=age;
}

@Override
publicStringtoString(){//复写toString方法
return"学号:"+this.num+",姓名:"+this.name+",年龄:"+this.age;
}
}
Map<String,Student>staff=newHashMap<String,Student>();
Studentstudent1=newStudent("15H001","唐僧",40);//用有参构造方法创建一个学生
Studentstudent2=newStudent();//用无参构造方法创建一个学生
student2.setNum("15H002");
student2.setName("孙悟空");
student2.setAge(2000);
Studentstudent3=newStudent("15H003","猪八戒",1000);//用有参构造方法创建一个学生
staff.put(student1.getNum(),student1);//1号学生放入hashMap
staff.put(student2.getNum(),student2);//2号学生放入hashMap
staff.put(student3.getNum(),student3);//3号学生放入hashMap

System.out.println("3.根据key(学号)查找学号为15H003和15H004的学生,如果存在则输出其学号、姓名、年龄信息,否则输出相应的提示信息");
String[]nums={"15H003","15H004"};
for(inti=0;i<nums.length;i++){
System.out.println("查找学号:"+nums[i]);
Studentstudent=staff.get(nums[i]);
if(student!=null){//如果找到了
System.out.println("学号:"+student.getNum()+",姓名:"+student.getName()+",年龄:"+student.getAge());
}else{//如果没有找到
System.out.println("学号:"+nums[i]+"的学生没有擦寻到相关信息");
}
}

System.out.println("4.输出所有学生的信息");
for(Map.Entry<String,Student>entry:staff.entrySet()){
Stringkey=entry.getKey();
Studentvalue=entry.getValue();
System.out.println("学号:"+key+",姓名:"+value.getName()+",年龄:"+value.getAge());
}

System.out.println("5.移除唐僧");
staff.remove("15H001");//根据唐僧的学号移除唐僧

System.out.println("6.把HashMap变成数组,并输出每个数组元素的信息(学号、姓名、年龄)");
Object[]values=staff.values().toArray();
for(inti=0;i<values.length;i++){
Studentstudent=(Student)values[i];
System.out.println(student.toString());
}
}
}

⑵ java语句 for (HashMap<String, String> map : list)是什么意思

这是for循环的新用法
相当于for(int i=0;i<size;i++){
}对list进行遍历

⑶ JAVA HASHMAP 如何用

HASHMAP最好与实例联系起来..它主要存的是键与值的关系.

举个例子如你现在有一个学生类
import java.util.HashMap;
public class Student {
String name;
String sex;
public Student(String n,String s) {
name=n;
sex=s;
}
public String toString(){
return ("姓名:"+name+"\n"+"性别:"+sex+"\n");
}
public static void main(String [] args){
HashMap hm=new HashMap();
Student s1=new Student("张三","男");
Student s2=new Student("李四","男");
Student s3=new Student("小利","女");

//存值是根据学生编号存的学生信息
hm.put("001",s1);
hm.put("002",s2);
hm.put("003",s3);

//查找学生编号是001的学生

//因为hm.get("001")反回的是Object所以加上强转
Student s=(Student)hm.get("001");
System.out.println(s.toString());

//其余的类似

}
}

⑷ java使用HashMap实现,键保存字符串,值保存保存出现的次数

恩,给你实现,代码说话,直接粘贴在ide中就可以运行:

importjava.util.HashMap;

publicclassSaveDatas{

publicstaticvoidmain(String[]args){

String[]names={"chenchao","zhangsan","zhangsan","chenhao","lisi","wangwu","zhaoliu","xiaopqiang","haha","chenchao"};

saveinHashMap(names);

}

publicstaticvoidsaveinHashMap(String[]strs){

HashMap<String,Integer>datas=newHashMap<String,Integer>();

for(inti=0;i<strs.length;i++){

Stringkey=strs[i];
Integervalue=datas.get(key);
if(value==null){
datas.put(key,1);
}else{
datas.put(key,value+1);
}
}
printHashMap(datas);
}


publicstaticvoidprintHashMap(HashMap<String,Integer>hashMap){


for(Stringkey:hashMap.keySet()){

System.out.println("字符串:"+key+"出现的字数为:"+hashMap.get(key));
}

}

}

//运行结果:

字符串:zhaoliu出现的字数为:1
字符串:wangwu出现的字数为:1
字符串:xiaopqiang出现的字数为:1
字符串:lisi出现的字数为:1
字符串:haha出现的字数为:1
字符串:zhangsan出现的字数为:2
字符串:chenhao出现的字数为:1
字符串:chenchao出现的字数为:2

⑸ java中的HashMap

HASHMAP最好与实例联系起来,它主要存的是键与值的关系.
举个例子:
现在有一个学生类
import java.util.HashMap;
public class Student {
String name;
String sex;
public Student(String n,String s) {
name=n;
sex=s;
}
public String toString(){
return ("姓名:"+name+"\n"+"性别:"+sex+"\n");
}
public static void main(String [] args){
HashMap hm=new HashMap();
Student s1=new Student("张三","男");
Student s2=new Student("李四","男");
Student s3=new Student("小利","女");

//存值是根据学生编号存的学生信息
hm.put("001",s1);
hm.put("002",s2);
hm.put("003",s3);

//查找学生编号是001的学生
//因为hm.get("001")反回的是Object所以加上强转
Student s=(Student)hm.get("001");
System.out.println(s.toString());
//其余的类似

}
}

⑹ java中的hashmap获取参数

publicstaticbooleanisBlank(Stringstr){
intstrLen;
if(str==null||(strLen=str.length())==0){
returntrue;
}
for(inti=0;i<strLen;i++){
if((Character.isWhitespace(str.charAt(i))==false)){
returnfalse;
}
}
returntrue;
}

publicstaticbooleanisNotBlank(Stringstr){
return!StringUtils.isBlank(str);
}


你向Map里put值的时候,就已经有问题了。。。

检查你put那段代码

⑺ java中怎么遍历HashMap

可以遍历 map 的 entrySet 和 keySet entrySet 的如 Set entryseSet=map.entrySet(); for (Map.Entry entry:entryseSet) { System.out.println(entry.getKey()+","+entry.getValue()); } keySet的是 Set set = map.keySet(); for (String s:set).

⑻ java中怎么遍历HashMap

内publicstaticvoidmain(String[]args){
容Mapmap=newHashMap();
map.put("a","a");
map.put("b","b");
map.put("c","c");
//a
Iteratorit=map.keySet().iterator();
while(it.hasNext()){
Stringkey=(String)it.next();
Stringval=(String)map.get(key);
System.out.println("key="+key+";value="+val);
}
//b
Set<Entry>array=map.entrySet();
for(Entrye:array){
Stringkey=(String)e.getKey();
Stringval=(String)e.getValue();
System.out.println("key="+key+";value="+val);
}
}

⑼ 在java中,遍历hashmap用什么方法

public class MapTest {
public static void main(String[] args) {
//先来一个map
Map<String,String> map=new HashMap<String,String>(){{//匿名内部类初始化
put("breakfast", "早点");
put("lunch", "中饭");
put("supper", "晚点");
}};
//遍历方法1:利用keyset进行遍历,它的优点在于可以根据你所想要的key值得到你想要的 values,更具灵活性!!
Set<String> keySet=map.keySet();
for(Iterator<String> it=keySet.iterator();it.hasNext();){
String s=it.next();
System.out.println(map.get(s));
}
//遍历方法2:最常规的一种遍历方法,最常规就是最常用的,虽然不复杂,但很重要,这是我们最熟悉的,就不多说了!!
Collection<String> c = map.values();
for(Iterator<String> it=c.iterator();it.hasNext();){
System.out.println(it.next());
}
//遍历方法3:比较复杂的一种遍历在这里,用map对象的keyEnter方法,呵呵~~他很暴力哦,它的灵活性太强了,想得到什么就能得到什么
Set<Map.Entry<String, String>> set=map.entrySet();
for(Iterator<Map.Entry<String, String>> it=set.iterator();it.hasNext();){
Map.Entry<String, String> mapEnter=it.next();
System.out.println("key="+mapEnter.getKey()+",value="+mapEnter.getValue());
}
}
}

⑽ Java的HashMap与for-each循环共用

这样的写法是没有问题,肯定是别的地方的问题

import java.util.HashMap;
public class MapKeysetTest{
public static void main(String args[]){
HashMap<String, String> map = new HashMap<String, String>();
map.put("a", "aa");
map.put("b", "bb");
map.put("c", "cc");
for(String s:map.keySet()){
System.out.println(s);
}
}
}

这样是能正确打开出来 a\b\c的

阅读全文

与javahashmapfor相关的资料

热点内容
linux账户设置密码 浏览:69
查看数据库各表记录数 浏览:968
linux查看文件的行数 浏览:692
fpga约束文件如何自动生成 浏览:377
linux打开的文件数 浏览:973
win8修改公用网络 浏览:324
linuxlcrt 浏览:30
编程里res是什么意思 浏览:616
dm80082版本固件 浏览:37
苹果手机用什么可以打开psd文件 浏览:627
服务号和小程序的区别 浏览:888
360手机助手qq文件位置 浏览:693
如何学习数码编程 浏览:60
微信消息发布出去 浏览:377
windows文件名一个个消失 浏览:907
易语言设置文件所有者 浏览:197
iphone手机如何显示wifi密码 浏览:880
文山大数据 浏览:496
3dsrxtools怎么升级 浏览:903
乐高的机器人编程是用什么 浏览:542

友情链接