Java 对于参数类型double boolean,运算符+未定义

Java 对于参数类型double boolean,运算符+未定义,java,Java,eclipse中的第18行显示了错误 对于参数类型double boolean,运算符+未定义 我只是不想添加它们。我只想用以下输出显示它们: 1.public class Application 2.{ 3. public static void main(String[] args) 4. { 5. int a = 1; 6. short b = 0; 7. long c = 34; 8. 9. float d = 5.6f; 10. doubl

eclipse中的第18行显示了错误

对于参数类型double boolean,运算符+未定义

我只是不想添加它们。我只想用以下输出显示它们:

1.public class Application 
2.{ 
3.  public static void main(String[] args) 
4.    {
5.    int a = 1;
6.    short b = 0;
7.    long c = 34;
8.  
9.    float d = 5.6f;
10.   double e = 3.65;
11. 
12.   char f = 'A';
13. 
14.   boolean g = true;
15. 
16.   byte h = 126;
17.  
18.   System.out.println(a + b + c + d + e + f + g + h);
19.  }  
20.}

在Java中,布尔值本身并不被视为数字,不像Python中的True为1,False为0

如果需要这种类型的行为,可以使用int i=g转换布尔g?1 : 0;

编辑: 我误解了你的问题-我知道你想把它们连接起来,而不是添加它们。使用StringBuilder可以很好地做到这一点:


要将多个变量连接到一个字符串,只需添加一个空字符串即可

StringBuilder sb = new StringBuilder();
sb.append(a);
sb.append(b);
sb.append(c);
// ...etc...
String str = sb.toString();
这有什么意义


在java中,将某物添加到字符串中会将其转换为字符串格式

如果不添加字符串,它只是一堆数字和+符号,这就是基本数学。

请参阅:

运算符+和-称为加法运算符

如果+运算符的任一操作数的类型为字符串,则 操作是字符串连接

否则,+运算符的每个操作数的类型必须为 可将§5.1.8转换为基本数字类型的类型,或 发生编译时错误

boolean不是数字类型,因此会出现此编译错误

您可以在语句末尾添加空字符串,结果将转换为字符串:

System.out.println("" + a + b + c + d + e + f + g + h);

您希望通过此操作得到什么结果:3+正确?提示:在java中,这毫无意义10+true等于什么?嘿,那么告诉我如何打印10245.63.65ATRUE126,您在问题部分中应该问的问题我不想添加所有这些。我只想显示所有的注释。如果你阅读注释,你会发现这不是OP想要的。嘿,string builder是java中的内置类吗?你能解释一下吗?是的,它位于java.lang包中。您需要导入它:import java.lang.StringBuilder;请注意,它是一个对象,而不是像int或boolean那样的基元。您能告诉我什么是对象吗?我建议您阅读Java教程。这里有一个关于对象的问题:这有什么意义?我是说我们为什么要这么做?谢谢你的回答。我得到了那个人。我不熟悉堆叠流。如何将您添加到我的收藏夹中,或者stackoverflow中是否有任何选项可以让您成为我的朋友?thanksOn stackoverflow,您不能将某人添加为联系人,但您可以:1用左边的箭头为答案投票。2接受问题的答案,并在左边打上绿色的复选标记。嘿,我是否需要在字符串的开始添加一些东西,或者我可以把它添加到任何地方,比如在中间或在Endin java中,添加一些东西到字符串,把这个东西转换成它的字符串格式。对于未来的搜索者,这称为类型强制。
System.out.println("" + a + b + c + d + e + f + g + h);
System.out.println(a + b + c + d + e + f + g + h + "");