在这个函数中,我希望在文件中获取文本,然后将其从字符串转换为十进制值,通过将此文本添加到数组中应用一些循环并将结果放入整数数组。返回此整数数组时,它给出了一个错误“找不到符号变量integerArray”
require __DIR__.'/laravel/bootstrap/autoload.php';
$app = require_once __DIR__.'/laravel/bootstrap/app.php';
我该如何解决?
更新:
我在 int[] inputfile () throws Exception{
BufferedReader br = null;
String sCurrentLine;
String message;
br = new BufferedReader(new FileReader("\input.txt"));
while ((sCurrentLine = br.readLine()) != null) {
message=sCurrentLine.toString();
char[] messageArray=message.toCharArray();
int[] integerArray = new int[messageArray.length];
for(int i=0; i<messageArray.length; i++)
integerArray[i] = (int)messageArray[i];
}
return integerArray;
}
循环之外声明了变量integerArray
,但它总是返回while
值,有没有办法将null
作为integerArray
值返回?因为int
返回该数组的String表示
Arrays.toString(integerArray)
答案 0 :(得分:4)
integerArray
是while循环中的局部变量,它在外部无法访问。在循环外声明它
int[] integerArray =null ;
while ((sCurrentLine = br.readLine()) != null) {
// other code
integerArray = new int[messageArray.length];
// other code
}
答案 1 :(得分:4)
您的struct CStyleGenerator<T> : GeneratorType, SequenceType {
let getNext: T -> T?
var current: T!
init(first: T, getNext: T -> T?) {
self.getNext = getNext
self.current = first
}
mutating func next() -> T? {
defer {
if current != nil {
current = getNext(current)
}
}
return current
}
}
for parentView in CStyleGenerator(first: view, getNext: { $0.parent }) {
// Do stuff with parentView
}
位于integerArray
循环内。在循环外声明它并在其中更改其值,然后它将起作用。
答案 2 :(得分:3)
int[] integerArray
,以便您能够在循环之后返回它。
int[] inputfile () throws Exception{
int[] integerArray = null;
BufferedReader br = null;
String sCurrentLine;
String message;
br = new BufferedReader(new FileReader("\input.txt"));
while ((sCurrentLine = br.readLine()) != null) {
message=sCurrentLine.toString();
char[] messageArray=message.toCharArray();
integerArray = new int[messageArray.length];
for(int i=0; i<messageArray.length; i++)
integerArray[i] = (int)messageArray[i];
}
return integerArray;
}