Java 字符数组辅助
我试图创建一个字符数组,但每次运行代码时都会出错。这是我的代码:Java 字符数组辅助,java,arrays,Java,Arrays,我试图创建一个字符数组,但每次运行代码时都会出错。这是我的代码: public static int namevalue(String name){ char[] charval={'', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'}; char let; in
public static int namevalue(String name){
char[] charval={'', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'};
char let;
int val=0;
int letter;
int total=0;
int character;
for (letter=0;letter<name.length();letter++){
let=name.charAt(letter);
if (charval[letter]==let){
total+=letter;
}
total+=val;
}
return total;
}
公共静态int-namevalue(字符串名称){
char[]charval={'','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};
煤焦;
int-val=0;
整数字母;
int-total=0;
整数字符;
对于(letter=0;letter,与前面的注释非常相似,没有文字“”。但是,如果需要为空字符串保留该位置,可以在其中存储空值
char[] charval={'\u0000', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'};
java中“NULL”字符的值为“\u0000”。这是字符的默认值。这是从中提取的。我通过在第一个空值中添加一个空格来运行此命令:
char[] charval = {' ', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'};
希望这有帮助。另一个,不那么优雅,但我喜欢它的明确性
char[] charval = new char[] {' ', 'A', 'B', 'C'...};
虽然它有点冗长…没有空字符文本('
)。删除它,你的代码就是合法的。char[]charval={/*'',*/'a',B',C',D',E',F',G',H',I',J',K',L',M',N',O',p',Q',R',S',T',U',V',W',X',Y',Z'}
为什么它们在“s”之前没有错误?要么删除第一个值'
,要么在单引号之间插入一个空格,这取决于您是否希望charval
中的第一个值是一个空格。这段代码打算做什么?您认为if
条件何时可能是false
他的任务是回答euler 22项目。我想我应该加一个{break;}行。感谢你们的帮助。此代码不可编译,您不能将null
分配到char
等基元类型中。不。这不是合法的Java。null
不是null
。char
不能null
。它可以是\0
。导入静态Java.sql.Types.null;这就是导入将删除编译错误。@DarkJade,这并不意味着您应该使用该常量,尤其是当当前的问题与SQLNULL
类型无关时。使用0
或'\0'
将使其更具可读性。