import java.util.*;
import java.lang.*;
import java.io.*;
class GFG
{
static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
public static void main (String[] args) throws IOException
{
int max=0;
String s= br.readLine();
int t=Integer.parseInt(br.readLine());
while(t-->0)
{
String w=" ",x=" ";
int l=s.length();
for(int i=0;i<l;i++)
{
char c=s.charAt(i);
w=w+c;
x=c+x;
if(w.equalsIgnoreCase(x))
{
if(w.length()>max)
{
max=w.length();
}
}
if(x.length()>max)
System.out.println(x);
w=" ";
x=" ";
}
}
}
}
我在输入“ aaaabbaa”时遇到此错误
线程“ main”中的异常java.lang.NumberFormatException:对于输入字符串:“ aaaabbaa” 在java.base / java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) 在java.base / java.lang.Integer.parseInt(Integer.java:652) 在java.base / java.lang.Integer.parseInt(Integer.java:770) 在GFG.main(File.java:14)
对于自定义Input of
5aa修道院abaaabbaawwwyyywwwrfkqyuqfjkxykjqlrzzfmlvyoshiktodnsjjp
Output是aabbaa偷偷摸摸的wwwyyywww[Rzz
我是java的新手,并且在网页编译器上的每个程序中都出现此错误
请告诉我我要去哪里哪里
您可能应该检查br.readLine()
是否为空值。您要调用它两次,但是输入中只有一行,因此第二次它返回null,并且Integer.parseInt
无法处理它并引发错误。
语句int t = Integer.parseInt(br.readLine());引发异常,因为当方法br.readLine()返回不可转换为数字(整数)的值时。Integer.parseInt()方法的参数值必须是可以转换为整数的字符串。如果要获取输入字符串的长度,只需使用int t = s.length;在语句String s = br.readLine();]之后
起初,您以字符串形式输入了输入,然后使用Integer.parseInt()将字符串转换为int,Java无法将字符串直接转换为int数据类型。
似乎您应该只在while循环的开头移动字符串s = br.readLine()。您的代码先读取一个字符串,然后读取一个数字,但实际上,仅基于自定义输入的外观,您应该先读取一个数字,然后读取该数量的字符串。像这样: