我正在尝试创建一个将读入文件的程序,将该文件拆分为数组,只要有“/”,然后将变量“theOutput”设置为数组中索引的值。麻烦的是,索引总是等于null。这是我的代码:
String theOutput = null;
String content = new Scanner(new File("URL.txt")).useDelimiter("\\Z").next();
theInput = content;
String[] URL = theInput.split("/");
System.out.println(theInput);
System.out.println(URL.length);
if (URL.length == 1) {
theOutput = URL[0];
if (URL.length == 3) {
theOutput = URL[2];
if (URL.length == 4) {
theOutput = URL[3];
if (URL.length == 5) {
theOutput = URL[4];
if (URL.length == 6) {
theOutput = URL[5];
}
}
}
该文件中的数据示例为“coffee:// localhost / brew”,因此它并不总是使用数组中的5个索引。
答案 0 :(得分:1)
你的if语句互相嵌套,所以if(URL.length == 3)
只有在URL的长度为1时才会运行。所以,你应该这样做:
if(URL.length == 1){
theOutput = URL[0];
}
if(URL.length == 2){
theOutput = URL[1]
}
//etc.
或者,您可以说theOutput = URL[URL.length-1]
来获取数组的最后一个元素。