无法隐式转换类型';Java.Lang.IAppandeble';到';Java.Lang.Strin

本文关键字:Java Lang IAppandeble Strin 转换 类型 | 更新日期: 2023-09-27 18:20:59

我收到此错误"无法将类型'Java.Lang.IAppandeble'隐式转换为'Java.Long.StringBuilder'。"

我不确定发生了什么事。

这是代码

StringBuilder text = new StringBuilder ();
char a = Convert.ToChar("x = ");
char b = Convert.ToChar(e.Values [0]);
char c = Convert.ToChar(", y = ");
char d = Convert.ToChar(e.Values [1]);
char t = Convert.ToChar(", z = ");
char f = Convert.ToChar(e.Values [2]);
text = text.Append (a).Append (b).Append (c).Append (d).Append (t).Append (f); //error

无法隐式转换类型';Java.Lang.IAppandeble';到';Java.Lang.Strin

您的代码非常错误。Convert.ToChar返回单个字符。不能将整个字符串转换为单个字符。

试试这个:

var text = string.Format("x = {0}, y = {1}, z = {2}",
                         e.Values[0], e.Values[1], e.Values[2]);

您得到的编译器错误是因为您似乎使用了Xamarin公开的StringBuilder类。这封装了Android SDK中可用的StringBuilder
但这不是您想要在C#代码中使用的。在C#代码中,您希望使用System.Text.StringBuilder

首先,此代码将导致acT的运行时异常;当然,代码执行将在char a = Convert.ToChar("x = ");行停止,抱怨

"x = "必须仅为一个字符,例如:"x",依此类推

第二,追加不会给你一个错误!,它将正常地附加字符串。

第三,您的异常似乎与Java有关,并且您正在用c#标记这个问题,那么呢?