java中map只能put传进两个值,想传进3个怎么办
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中map只能put传进两个值,想传进3个怎么办相关的知识,希望对你有一定的参考价值。
map.put(key,value);这个方法不是传进两个值,而是传进一个值,第一个参数是key,第二个参数是值,
当你想要取的时候,可以使用 map.get(key)来获得这个key所对应的value;
如果你想要传进第二个值,第三个值,再调一次map.put(key,value)即可; 参考技术A put不是传2个值
put(key,value);
key - 与指定值关联的键value - 与指定键关联的值
所以value才是你想传进去的值key是你取对于的值要用的键键值对知道么?你想传三个 就put三次咯 参考技术B 将value用map对象呗 参考技术C 别这样想
2017-09-21
Object 类:
Object 类是所有类的父类,位于java.lang包中;
数组是object类的子类;
Object 和object [ ]的区别:
Object :任何类型的参数都可以进行传进执行;
object [ ]:对象型数组,只能接受保存引用类型的数组;
Object类的常用方法:
toString();
toString方法可以将任何一个对象转换成字符串返回,返回值的生成算法为:getClass().getName() + ‘@‘ + Integer.toHexString(hashCode())。
equals();
Object类中的equals方法,用来比较两个引用的虚地址。当且仅当两个引用在物理上是同一个对象时,返回值为true,否则将返回false。
比较对象的虚地址,但是可以在类中被重写。
如:String类重写了,两个相同值的String对象相比较为 true;
String str=new String(“123”);
String str1=new String(“123”);
System.out.println(str.equals(str1));à打印为true.
“==”
比较的是内存中的虚地址
String str=new String(“123”);
String str1=new String(“123”);
System.out.println(str==str1);à打印为false
hashCode();
获取对象的哈希码值,为16进制
父类:
public class Course {
String title;
int money;
Course(){
System.out.println("父类----------无参");
}
public Course(String title,int money){
this.title = title;
this.money = money;
System.out.println("父类----------有参");
}
void teach(){
System.out.println("父类----------teach");
}
}
子类1:
public class courseSon1 extends Course{
String title;
int money;
courseSon1(){
System.out.println("子类1----------无参");
}
public courseSon1(String title,int money){
this.title = title;
this.money = money;
System.out.println("子类1----------有参");
}
void teach(){
System.out.println("子类1----------teach");
}
void student(){
System.out.println("子类1----------student");
}
public String toString() {
return "courseSon [title=" + title + ", money=" + money + "]";
}
public boolean equals(courseSon1 obj) {
String str = this.title;
if(str.equals(obj.title)&this.money==obj.money) {
return true;
}else {
return false;
}
}
}
子类2:
public class courseson2 extends Course {
String title;
int money;
courseson2(){
System.out.println("子类2----------无参");
}
public courseson2(String title,int money){
this.title = title;
this.money = money;
System.out.println("子类2----------有参");
}
void teach(){
System.out.println("子类2----------teach");
}
void student(){
System.out.println("子类2----------student");
}
public String toString() {
return "courseSon [title=" + title + ", money=" + money + "]";
}
public boolean equals(courseson2 obj) { //
System.out.println(obj.title);
String str = this.title;
if(str.equals(obj.title)&this.money==obj.money) {
return true;
}else {
return false;
}
}
}
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
courseSon1 dddd = new courseSon1("数学",100);
courseson2 aaaa = new courseson2("数学",100);
courseson2 cccc = new courseson2("数学",100);
System.out.println(dddd.equals(aaaa)); //如果没有重写equals方法,结果false
System.out.println(dddd.equals(cccc));
System.out.println(aaaa.equals(cccc));
fun(dddd);
fun(aaaa);
System.out.println(dddd.toString()); //因为子类没有返回值 结果是地址
System.out.println(aaaa.toString());
}
static void fun(Course cs) {
cs.teach();
}
}
以上是关于java中map只能put传进两个值,想传进3个怎么办的主要内容,如果未能解决你的问题,请参考以下文章
44 道 JavaScript 难题(JavaScript Puzzlers!)