for(int i=1; i<=6;i++){ if(textField.getText().equals(i)){ JOptionPane.showMessageDialog(null,"借书成功"); break; } 一开始equals括号里我加了双引号,运行出来后的窗口,我输入对应的图书编号,什么反应都没有,我问了老师,老师说equals对应的是字符串,我的i不是字符串,我又问老师改成什么,老师叫我自己想,我吐了啊,求大佬告知equals改成什么啊
==和equals的区别? equals和==最大区别是一个是方法,一个是运算符 ==常用于比较原生类型,而equals用来比较方法两个对象的内容是否相等。 ==如果比较的对像是基本类型,则比较的数值是否相等,如果比较的是引用数据类型,则比较的是对象的地址值是否相等。 如果==和equals用于比较对象,当两个引用地址相同,==返回true。而equals()可以返回true或者false主要取决于重写实现。如字符串的比较,不同情况== 和 equals()返回不同结果。 注意:equals 方法不能用于基本数据类型的变量,如果没有对 equals 方法进行重写,则比较的是引用类型的变量所指向的对象的地址。
如果对你有帮助,记得采纳一下哦~谢谢O(∩_∩)O
==
基本知识不自己想 那能怎么办
你把i转成字符串就行,String.valueOf(i)或者i + "";