String[] arr = {"zhangsan","lisi","wangwu"};int num = 0;String name = "wangwu";for(int i = 0; i<arr.length;i++){if(arr[i] .equals(name)){num=1;} else{num=2;continue;}System.out.println(num);
这里字符串比较用的是equals(),当比较出现“wangwu”时,num=1,等于2则跳过继续循环比较,当使用equals()和 == 比较时,发现都可以对这个字符串进行比较,但是有时用==比较字符串又无法实现的问题。
==可以比较基本数据类型,像 byte,short,char,int,float,double,long,boolean 也包括String 本身定义的变量 本质上比较的是内存地址,如果相等,则说明这两个引用实际是指向同一个对象地址的。
equals 相当于比较对象中的内容,更多的用在表面的字符串比较上。