Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 字符串整型变量澄清_Java_String_Class_Int_Type Conversion - Fatal编程技术网

Java 字符串整型变量澄清

Java 字符串整型变量澄清,java,string,class,int,type-conversion,Java,String,Class,Int,Type Conversion,我已收到以下错误消息 G:\CIS260\Assignments>javac PhoneNumber.java PhoneNumber.java:45: error: incompatible types number = decode(c); ^ required: int found: String 1 error 在开始上课的时候,我 char c; private int number = 0 这使它成

我已收到以下错误消息

G:\CIS260\Assignments>javac PhoneNumber.java
PhoneNumber.java:45: error: incompatible types
        number = decode(c);
                       ^
  required: int
  found:    String
1 error
在开始上课的时候,我

char c;
private int number = 0
这使它成为一个int,所以我知道为了下一行编译,我必须有两个相同的数据类型。我的理解是

str[1].valueOf(number);

number = decode(c);
public static String decode(char c){

 switch (c) {
应将变量编号设置为字符串,使解码和编号的数据类型相等,因为它们都是字符串


我觉得我可能忘记了一个步骤,以使这两个字符串的数据类型。有什么想法吗?

是的,您将数字声明为整数


所以您应该使用Integer.ParseInt强制转换它。

是的,您将数字声明为整数


因此,您应该使用Integer.ParseInt来强制转换它。

您有一个方法
public static String decode(char c)
,它返回一个
字符串的值
,但是变量
number
接受声明为
整数的值
字符串


尝试使用
Integer
的返回类型,如
public static int decode(char c)
您有
public static String decode(char c)
方法,该方法返回值
String
,但变量
number
接受声明为
整数的值
String


尝试使用
整数
的返回类型,如
公共静态整数解码(charc)
您的方法返回一个
字符串

您正试图将返回的字符串存储在
int

Java不会像这样自动将字符串转换为整数。您必须显式地进行转换。您可以为此使用:

int number = Integer.parseInt(decode(c));

请注意,如果返回的字符串实际上不是有效的整数,将抛出
NumberFormatException

您的方法将返回
字符串

您正试图将返回的字符串存储在
int

Java不会像这样自动将字符串转换为整数。您必须显式地进行转换。您可以为此使用:

int number = Integer.parseInt(decode(c));

请注意,如果返回的字符串实际上不是有效的整数,则将抛出
NumberFormatException

char c=0//未声明和初始化


number=Integer.parseInt(解码(c))

charc=0//未声明和初始化


number=Integer.parseInt(解码(c))

这里的c是什么。也发布c声明。此处可能存在c的副本。c的后期声明。可能重复的学究:你的意思是“转换”,而不是“铸造”。学究:你的意思是“转换”,而不是“铸造”。