【发布时间】:2015-12-14 09:19:08
【问题描述】:
我想编写一个程序,因为它从用户那里获取输入字符串(例如 bhas1234@gmail.com)并打印为 bhas1234(在 @ 之后留下字符)当我编写以下代码时它显示以下错误:
import java.util.*;
import java.util.Scanner;
public class Name {
public static void main(String[] args) {
Scanner take =new Scanner(System.in);
int j=0;
String[] sh;
String gmail;
for(j=0;sh[j]!="exit";j++)
{
sh[j]= take.nextLine();
int i=sh[j].indexOf('@');
gmail= sh[j].substring(0,i);
System.out.println(gmail);
}
}
}
错误显示为
线程“main”java.lang.Error 中的异常:未解决的编译问题: 局部变量 sh 可能没有初始化
【问题讨论】:
-
sh 可能尚未初始化
-
这个错误几乎可以解释出了什么问题
-
这里的for循环到底是什么?