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,这并不意味着您应该使用该常量,尤其是当当前的问题与SQL
NULL
类型无关时。使用
0
'\0'
将使其更具可读性。