Java 请检查我的逻辑错误
如果输入为Java 请检查我的逻辑错误,java,Java,如果输入为x=y+5 输出必须是: Token 1 is x is identifier Token 2 is = Token 3 is y is identifier Token 4 is + Token 5 is 5 这是我做的代码,我不知道我的if条件有什么问题 char[] ident = {'x','y','z','a','b','c','k'}; Scanner sc = new Scanner(System.in); System.out.println("Please Ent
x=y+5
输出必须是:
Token 1 is x is identifier
Token 2 is =
Token 3 is y is identifier
Token 4 is +
Token 5 is 5
这是我做的代码,我不知道我的if条件有什么问题
char[] ident = {'x','y','z','a','b','c','k'};
Scanner sc = new Scanner(System.in);
System.out.println("Please Enter Your String");
String x = sc.nextLine();
StringTokenizer t = new StringTokenizer(x);
for (int k = 0; k < ident.length; k++) {
for (int j = 1; j < x.length()+1; j++) {
char m = x.charAt(j);
if (m==ident[k]) {
System.out.println("Token " + j + " is " + t.nextToken()+" is identifier");
} else {
System.out.println("Token " + j + " is " + t.nextToken());
}
}
}
char[]ident={'x','y','z','a','b','c','k'};
扫描仪sc=新的扫描仪(System.in);
System.out.println(“请输入您的字符串”);
字符串x=sc.nextLine();
StringTokenizer t=新的StringTokenizer(x);
对于(int k=0;k
在StringTokenizer下面不需要两个循环。你可以这样做:
final String str = new String(ident);
char m;
for (int j = 0; j < x.length(); j++) {
m = x.charAt(j);
if (str.indexOf(m) >= 0) {
System.out.println("Token " + j + " is " + m+" is identifier");
} else {
System.out.println("Token " + j + " is " + m);
}
}
final String str=新字符串(ident);
charm;
对于(int j=0;j=0){
System.out.println(“令牌“+j+”是“+m+”是标识符”);
}否则{
System.out.println(“令牌”+j+“是”+m);
}
}
运行代码了解问题:欢迎您。如果您认为答案有帮助,请通过接受答案来结束此问题,以便其他人在不久的将来将其用作参考。