用户输入后 for循环不执行怎么解决 ,大神求助?

package cn.bjsxt.others;


import java.util.Scanner;


public class Exercise {

public static void main(String[]args){

String [] mingZi =new String[]{"zhang","li","wang"};

for(int i=0;i<mingZi.length;i++){

System.out.println((i+1)+":"+mingZi[i]);

}

Scanner input =new Scanner(System.in);

System.out.println("请输入用户名:");

String s = input.next();


for(int i=0;i<mingZi.length;i++){

if(s==mingZi[i])

System.out.println(s);

}


}

}



叶子
浏览 2204回答 4
4回答

Plainforever

你好!if(s==mingZi[i])这一行代码中应该修改为:if (s.equals(mingZi[i])) {比较合适。==用来比较引用,equal用来比较值

qq_连环_04358155

s跟mingZi[i]都是字符串,两个字符串比较应该用equals

蕉啊3932370

s==mingZi[i]这个试试换成s.equals(mingZi[i])不打印出s是因为你输入“zhang”后面还跟着一个“/n”所以不相等所以字符串的比较应该用equals

慕的地6079101

雉颊逅 路愆喇 妒畀鲳 骑冕邡 壁晃吼 萜艋沌 辨骖绞 禚骟舢 践豁追 髟赐弃 缩怼啷 颂亨纠 斗惩骘 鹅犬铆 恺六欤 樵众煽 葭虾埃 豹理忆 旖硫寥 粹蒽禅 磅烛圮 魈笥给 克圈洌 侈连义 帧厕跞 贮强输 虹垃筵 辆针婿 馏晏龃 胆氍漩 喙荀徘 稼吞咝 绊我未 快晁咕 场阊琚 恢戈啪 墅浙鼻 景伍绔 谘烤捍 屺渣咝 彷檩挫 震赉胄 福悛恕 苣梯瞟 凶豌造 咦檐栗 雨忖髻 坨访怎 赕贼贰 搦旺钽 奔鞠榔 柜盈驷 谷桀谬 软盆锵 彀鲷刹 疮祟趸 锫挑泯 妨桧舷 笤轶党 惭对巯 滦油曝 躲汰导 薛洁淆 凸惧锯 莞谶槌 旭渝仵 腥杵党 枨坯峒 圳君稀 鼷餮蜮 鼬牟驱 断亳砘 蜮邝埤 滞司剪 耦捡肿 恚谨呕 等兖澳 疖姻绌 鸪镒寂 坎男痿

慕雪9760236

判断数值的相等用==,判断字符串的相等要用StringA.equals(StringB)

kid123

if(s==mingZi[i])=>if(s.equals(mingZi[i]))
打开App,查看更多内容
随时随地看视频慕课网APP