我在使用 jdb(Java 调试器)调试我的 Java 源代码时遇到问题。当我尝试使用扫描器类对象在实例变量中设置值时,它将显示以下输出
Jdb Displaying following output
我不明白为什么我收到这条消息“无法识别的命令”。 我的java源码如下
import java.util.Scanner;
class StringPlay{
public static void main(String args[]){
Scanner sc=new Scanner(System.in);
int t;
// System.out.println("t");
t=sc.nextInt();
for(int l=0;l<t;l++){
String s="",a="";
int k=0,player=0;
// System.out.println("s");
s=sc.next();
for(int i=0;i<s.length();i++){
for(int j=i+1;j<s.length();j++){
if((int)s.charAt(j)!=(int)s.charAt(i)){
// strcat(a,s[j]);
a+=s.charAt(j);
// k++;
}
if(j==s.length()-1){
s=a;
a="";
// string::replace(a,0,"");
player++;
}
}
}
if(player%2==0)System.out.println("player1");
else System.out.println("player2");
}
}
}
嗯,我使用的是 jdb 1.8 版(Java SE 1.8.0_151 版)。 和 Java 版本“9.0.1” Java(TM) SE 运行时环境(build 9.0.1+11) Java HotSpot(TM) 64 位服务器 VM(构建 9.0.1+11,混合模式)
我正在 Ubuntu 16.04LTS 中使用 Java。
在此先感谢您对我的帮助。
最佳答案
尝试为扫描器提供输入字符串以使用 jdb 进行调试。因为您的控制台输入正在被 jdb 而不是 Scanner 类读取。
你可以试试:
String myInput = "This is my input, that I want in my sc.";
Scanner sc = new Scanner(myInput);
或者你可以直接喂它:
Scanner sc = new Scanner("This is my input, that I want in my sc.");
关于java - 调试 Java 代码时如何使用 Scanner 类对象设置变量的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48609855/