Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/183.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
Android 我希望以编程方式使用内容变量更改字符串值_Android_Eclipse_String_Variables_If Statement - Fatal编程技术网

Android 我希望以编程方式使用内容变量更改字符串值

Android 我希望以编程方式使用内容变量更改字符串值,android,eclipse,string,variables,if-statement,Android,Eclipse,String,Variables,If Statement,我已经创建了这段代码,但不起作用,我该怎么做? 我希望字符串的内容根据变量采用不同的值 if ((euro9 == 0) && (cent9 == 00)) { String msg1 = "Euro:"+MailA.this.euro1+","+MailA.this.cent1+" "+"Motivazione:"+MailA.this.motivazione+"\n"; String msg3

我已经创建了这段代码,但不起作用,我该怎么做? 我希望字符串的内容根据变量采用不同的值

if ((euro9 == 0) && (cent9 == 00)) {
                    String msg1 = "Euro:"+MailA.this.euro1+","+MailA.this.cent1+"   "+"Motivazione:"+MailA.this.motivazione+"\n";
                    String msg3 = "Euro:"+MailA.this.euro3+","+MailA.this.cent3+"   "+"Motivazione:"+MailA.this.motivazione2+"\n";
                    String msg4 = "Euro:"+MailA.this.euro4+","+MailA.this.cent4+"   "+"Motivazione:"+MailA.this.motivazione4+"\n";
                    String msg5 = "Euro:"+MailA.this.euro5+","+MailA.this.cent5+"   "+"Motivazione:"+MailA.this.motivazione5+"\n";
                    String msg6 = "Euro:"+MailA.this.euro6+","+MailA.this.cent6+"   "+"Motivazione:"+MailA.this.motivazione6+"\n";
                    String msg7 = "Euro:"+MailA.this.euro7+","+MailA.this.cent7+"   "+"Motivazione:"+MailA.this.motivazione7+"\n";
                    String msg8 = "Euro:"+MailA.this.euro8+","+MailA.this.cent8+"   "+"Motivazione:"+MailA.this.motivazione8+"\n";
                    String msg9 = "";

                }

                if ((euro9 != 0) && (cent9 != 00)) {
                    String msg1 = "Euro:"+MailA.this.euro1+","+MailA.this.cent1+"   "+"Motivazione:"+MailA.this.motivazione+"\n";
                    String msg3 = "Euro:"+MailA.this.euro3+","+MailA.this.cent3+"   "+"Motivazione:"+MailA.this.motivazione2+"\n";
                    String msg4 = "Euro:"+MailA.this.euro4+","+MailA.this.cent4+"   "+"Motivazione:"+MailA.this.motivazione4+"\n";
                    String msg5 = "Euro:"+MailA.this.euro5+","+MailA.this.cent5+"   "+"Motivazione:"+MailA.this.motivazione5+"\n";
                    String msg6 = "Euro:"+MailA.this.euro6+","+MailA.this.cent6+"   "+"Motivazione:"+MailA.this.motivazione6+"\n";
                    String msg7 = "Euro:"+MailA.this.euro7+","+MailA.this.cent7+"   "+"Motivazione:"+MailA.this.motivazione7+"\n";
                    String msg8 = "Euro:"+MailA.this.euro8+","+MailA.this.cent8+"   "+"Motivazione:"+MailA.this.motivazione8+"\n";
                    String msg9 = "Euro:"+MailA.this.euro9+","+MailA.this.cent9+"   "+"Motivazione:"+MailA.this.motivazione9+"\n";

                }
                sh.putExtra(Intent.EXTRA_TEXT, msg1+msg3+msg4+msg5+msg6+msg7+msg8+msg9);
无法调用字符串,为什么?

将字符串(msg1、msg3等)声明为外部if循环

您正在使用的局部变量的范围仅在条件允许的情况下可在内部访问 因为您在if条件内声明它们

在if循环外声明字符串(msg1、msg3等)

您正在使用的局部变量的范围仅在条件允许的情况下可在内部访问 因为您在if条件内声明它们

在if循环外声明字符串(msg1、msg3等)

您正在使用的局部变量的范围仅在条件允许的情况下可在内部访问 因为您在if条件内声明它们

在if循环外声明字符串(msg1、msg3等)

您正在使用的局部变量的范围仅在条件允许的情况下可在内部访问
因为您在if条件中声明了它们,所以您可能希望这样做:

  • 首先声明变量(在括号外,以便在其后可访问)
  • 赋值
  • 使用它们
但是下面的代码是如此重复,你应该避免这样做。 请参见结尾以了解其他选项

String msg1, msg2, msg3, msg4, msg5, msg6, msg7, msg8, msg9;
    if ((euro9 == 0) && (cent9 == 00))
    {
        msg1 = "Euro:" + MailA.this.euro1 + "," + MailA.this.cent1 + "   " + "Motivazione:"
                + MailA.this.motivazione + "\n";
        msg3 = "Euro:" + MailA.this.euro3 + "," + MailA.this.cent3 + "   " + "Motivazione:"
                + MailA.this.motivazione2 + "\n";
        msg4 = "Euro:" + MailA.this.euro4 + "," + MailA.this.cent4 + "   " + "Motivazione:"
                + MailA.this.motivazione4 + "\n";
        msg5 = "Euro:" + MailA.this.euro5 + "," + MailA.this.cent5 + "   " + "Motivazione:"
                + MailA.this.motivazione5 + "\n";
        msg6 = "Euro:" + MailA.this.euro6 + "," + MailA.this.cent6 + "   " + "Motivazione:"
                + MailA.this.motivazione6 + "\n";
        msg7 = "Euro:" + MailA.this.euro7 + "," + MailA.this.cent7 + "   " + "Motivazione:"
                + MailA.this.motivazione7 + "\n";
        msg8 = "Euro:" + MailA.this.euro8 + "," + MailA.this.cent8 + "   " + "Motivazione:"
                + MailA.this.motivazione8 + "\n";
        msg9 = "";

    }

    if ((euro9 != 0) && (cent9 != 00))
    {
        msg1 = "Euro:" + MailA.this.euro1 + "," + MailA.this.cent1 + "   " + "Motivazione:"
                + MailA.this.motivazione + "\n";
        msg3 = "Euro:" + MailA.this.euro3 + "," + MailA.this.cent3 + "   " + "Motivazione:"
                + MailA.this.motivazione2 + "\n";
        msg4 = "Euro:" + MailA.this.euro4 + "," + MailA.this.cent4 + "   " + "Motivazione:"
                + MailA.this.motivazione4 + "\n";
        msg5 = "Euro:" + MailA.this.euro5 + "," + MailA.this.cent5 + "   " + "Motivazione:"
                + MailA.this.motivazione5 + "\n";
        msg6 = "Euro:" + MailA.this.euro6 + "," + MailA.this.cent6 + "   " + "Motivazione:"
                + MailA.this.motivazione6 + "\n";
        msg7 = "Euro:" + MailA.this.euro7 + "," + MailA.this.cent7 + "   " + "Motivazione:"
                + MailA.this.motivazione7 + "\n";
        msg8 = "Euro:" + MailA.this.euro8 + "," + MailA.this.cent8 + "   " + "Motivazione:"
                + MailA.this.motivazione8 + "\n";
        msg9 = "Euro:" + MailA.this.euro9 + "," + MailA.this.cent9 + "   " + "Motivazione:"
                + MailA.this.motivazione9 + "\n";

    }
    sh.putExtra(Intent.EXTRA_TEXT, msg1 + msg3 + msg4 + msg5 + msg6 + msg7 + msg8 + msg9);

我强烈建议您采用以下方法,而不是上述方法。

在单独的文件中创建对象

public class MyObject
{
    public String euro;
    public String cent;
    public String motivazione;

    public MyObject(String euro, String cent, String motivazione)
    {
        this.euro = euro;
        this.cent = cent;
        this.motivazione = motivazione;
    }
}
并使用它

        // Create an instance of MyObject
    MyObject obj = new MyObject("asdad", "fcsfc", "fdsf");

        // Initialize a list that will hold all instances
    HashMap<Integer, MyObject> list = new HashMap<Integer, MyObject>();
    list.put(1, obj);
    // OR
    list.put(2, new MyObject("aaaaaaaa", "bbbbbbb", "ccccccc"));

    // And retrieve your item with
    MyObject my = list.get(2);
//创建MyObject的实例
MyObject obj=新的MyObject(“asdad”、“fcsfc”、“fdsf”);
//初始化一个包含所有实例的列表
HashMap list=新建HashMap();
列表。put(1,obj);
//或
列表.付诸表决(2,新的MyObject(“AAAAAAA”、“bbbbbbb”、“CCCCC”);
//并使用
MyObject my=list.get(2);
最后,您将能够执行以下操作:

    if (condition)
    {
        for (Map.Entry<Integer, MyObject> entry : list.entrySet())
        {
            MyObject currentObject = entry.getValue();
            msg += "Euro:" + currentObject.euro + "," + currentObject.cent + "   " + "Motivazione:"
                    + currentObject.motivazione + "\n";
        }
    }
sh.putExtra(Intent.EXTRA_TEXT, msg);
if(条件)
{
对于(Map.Entry:list.entrySet())
{
MyObject currentObject=entry.getValue();
msg+=“Euro:”+currentObject.Euro+“,“+currentObject.cent+”+“+”Motivazione:”
+currentObject.motivazione+“\n”;
}
}
sh.putExtra(Intent.EXTRA_TEXT,msg);

您可能希望这样做:

  • 首先声明变量(在括号外,以便在其后可访问)
  • 赋值
  • 使用它们
但是下面的代码是如此重复,你应该避免这样做。 请参见结尾以了解其他选项

String msg1, msg2, msg3, msg4, msg5, msg6, msg7, msg8, msg9;
    if ((euro9 == 0) && (cent9 == 00))
    {
        msg1 = "Euro:" + MailA.this.euro1 + "," + MailA.this.cent1 + "   " + "Motivazione:"
                + MailA.this.motivazione + "\n";
        msg3 = "Euro:" + MailA.this.euro3 + "," + MailA.this.cent3 + "   " + "Motivazione:"
                + MailA.this.motivazione2 + "\n";
        msg4 = "Euro:" + MailA.this.euro4 + "," + MailA.this.cent4 + "   " + "Motivazione:"
                + MailA.this.motivazione4 + "\n";
        msg5 = "Euro:" + MailA.this.euro5 + "," + MailA.this.cent5 + "   " + "Motivazione:"
                + MailA.this.motivazione5 + "\n";
        msg6 = "Euro:" + MailA.this.euro6 + "," + MailA.this.cent6 + "   " + "Motivazione:"
                + MailA.this.motivazione6 + "\n";
        msg7 = "Euro:" + MailA.this.euro7 + "," + MailA.this.cent7 + "   " + "Motivazione:"
                + MailA.this.motivazione7 + "\n";
        msg8 = "Euro:" + MailA.this.euro8 + "," + MailA.this.cent8 + "   " + "Motivazione:"
                + MailA.this.motivazione8 + "\n";
        msg9 = "";

    }

    if ((euro9 != 0) && (cent9 != 00))
    {
        msg1 = "Euro:" + MailA.this.euro1 + "," + MailA.this.cent1 + "   " + "Motivazione:"
                + MailA.this.motivazione + "\n";
        msg3 = "Euro:" + MailA.this.euro3 + "," + MailA.this.cent3 + "   " + "Motivazione:"
                + MailA.this.motivazione2 + "\n";
        msg4 = "Euro:" + MailA.this.euro4 + "," + MailA.this.cent4 + "   " + "Motivazione:"
                + MailA.this.motivazione4 + "\n";
        msg5 = "Euro:" + MailA.this.euro5 + "," + MailA.this.cent5 + "   " + "Motivazione:"
                + MailA.this.motivazione5 + "\n";
        msg6 = "Euro:" + MailA.this.euro6 + "," + MailA.this.cent6 + "   " + "Motivazione:"
                + MailA.this.motivazione6 + "\n";
        msg7 = "Euro:" + MailA.this.euro7 + "," + MailA.this.cent7 + "   " + "Motivazione:"
                + MailA.this.motivazione7 + "\n";
        msg8 = "Euro:" + MailA.this.euro8 + "," + MailA.this.cent8 + "   " + "Motivazione:"
                + MailA.this.motivazione8 + "\n";
        msg9 = "Euro:" + MailA.this.euro9 + "," + MailA.this.cent9 + "   " + "Motivazione:"
                + MailA.this.motivazione9 + "\n";

    }
    sh.putExtra(Intent.EXTRA_TEXT, msg1 + msg3 + msg4 + msg5 + msg6 + msg7 + msg8 + msg9);

我强烈建议您采用以下方法,而不是上述方法。

在单独的文件中创建对象

public class MyObject
{
    public String euro;
    public String cent;
    public String motivazione;

    public MyObject(String euro, String cent, String motivazione)
    {
        this.euro = euro;
        this.cent = cent;
        this.motivazione = motivazione;
    }
}
并使用它

        // Create an instance of MyObject
    MyObject obj = new MyObject("asdad", "fcsfc", "fdsf");

        // Initialize a list that will hold all instances
    HashMap<Integer, MyObject> list = new HashMap<Integer, MyObject>();
    list.put(1, obj);
    // OR
    list.put(2, new MyObject("aaaaaaaa", "bbbbbbb", "ccccccc"));

    // And retrieve your item with
    MyObject my = list.get(2);
//创建MyObject的实例
MyObject obj=新的MyObject(“asdad”、“fcsfc”、“fdsf”);
//初始化一个包含所有实例的列表
HashMap list=新建HashMap();
列表。put(1,obj);
//或
列表.付诸表决(2,新的MyObject(“AAAAAAA”、“bbbbbbb”、“CCCCC”);
//并使用
MyObject my=list.get(2);
最后,您将能够执行以下操作:

    if (condition)
    {
        for (Map.Entry<Integer, MyObject> entry : list.entrySet())
        {
            MyObject currentObject = entry.getValue();
            msg += "Euro:" + currentObject.euro + "," + currentObject.cent + "   " + "Motivazione:"
                    + currentObject.motivazione + "\n";
        }
    }
sh.putExtra(Intent.EXTRA_TEXT, msg);
if(条件)
{
对于(Map.Entry:list.entrySet())
{
MyObject currentObject=entry.getValue();
msg+=“Euro:”+currentObject.Euro+“,“+currentObject.cent+”+“+”Motivazione:”
+currentObject.motivazione+“\n”;
}
}
sh.putExtra(Intent.EXTRA_TEXT,msg);

您可能希望这样做:

  • 首先声明变量(在括号外,以便在其后可访问)
  • 赋值
  • 使用它们
但是下面的代码是如此重复,你应该避免这样做。 请参见结尾以了解其他选项

String msg1, msg2, msg3, msg4, msg5, msg6, msg7, msg8, msg9;
    if ((euro9 == 0) && (cent9 == 00))
    {
        msg1 = "Euro:" + MailA.this.euro1 + "," + MailA.this.cent1 + "   " + "Motivazione:"
                + MailA.this.motivazione + "\n";
        msg3 = "Euro:" + MailA.this.euro3 + "," + MailA.this.cent3 + "   " + "Motivazione:"
                + MailA.this.motivazione2 + "\n";
        msg4 = "Euro:" + MailA.this.euro4 + "," + MailA.this.cent4 + "   " + "Motivazione:"
                + MailA.this.motivazione4 + "\n";
        msg5 = "Euro:" + MailA.this.euro5 + "," + MailA.this.cent5 + "   " + "Motivazione:"
                + MailA.this.motivazione5 + "\n";
        msg6 = "Euro:" + MailA.this.euro6 + "," + MailA.this.cent6 + "   " + "Motivazione:"
                + MailA.this.motivazione6 + "\n";
        msg7 = "Euro:" + MailA.this.euro7 + "," + MailA.this.cent7 + "   " + "Motivazione:"
                + MailA.this.motivazione7 + "\n";
        msg8 = "Euro:" + MailA.this.euro8 + "," + MailA.this.cent8 + "   " + "Motivazione:"
                + MailA.this.motivazione8 + "\n";
        msg9 = "";

    }

    if ((euro9 != 0) && (cent9 != 00))
    {
        msg1 = "Euro:" + MailA.this.euro1 + "," + MailA.this.cent1 + "   " + "Motivazione:"
                + MailA.this.motivazione + "\n";
        msg3 = "Euro:" + MailA.this.euro3 + "," + MailA.this.cent3 + "   " + "Motivazione:"
                + MailA.this.motivazione2 + "\n";
        msg4 = "Euro:" + MailA.this.euro4 + "," + MailA.this.cent4 + "   " + "Motivazione:"
                + MailA.this.motivazione4 + "\n";
        msg5 = "Euro:" + MailA.this.euro5 + "," + MailA.this.cent5 + "   " + "Motivazione:"
                + MailA.this.motivazione5 + "\n";
        msg6 = "Euro:" + MailA.this.euro6 + "," + MailA.this.cent6 + "   " + "Motivazione:"
                + MailA.this.motivazione6 + "\n";
        msg7 = "Euro:" + MailA.this.euro7 + "," + MailA.this.cent7 + "   " + "Motivazione:"
                + MailA.this.motivazione7 + "\n";
        msg8 = "Euro:" + MailA.this.euro8 + "," + MailA.this.cent8 + "   " + "Motivazione:"
                + MailA.this.motivazione8 + "\n";
        msg9 = "Euro:" + MailA.this.euro9 + "," + MailA.this.cent9 + "   " + "Motivazione:"
                + MailA.this.motivazione9 + "\n";

    }
    sh.putExtra(Intent.EXTRA_TEXT, msg1 + msg3 + msg4 + msg5 + msg6 + msg7 + msg8 + msg9);

我强烈建议您采用以下方法,而不是上述方法。

在单独的文件中创建对象

public class MyObject
{
    public String euro;
    public String cent;
    public String motivazione;

    public MyObject(String euro, String cent, String motivazione)
    {
        this.euro = euro;
        this.cent = cent;
        this.motivazione = motivazione;
    }
}
并使用它

        // Create an instance of MyObject
    MyObject obj = new MyObject("asdad", "fcsfc", "fdsf");

        // Initialize a list that will hold all instances
    HashMap<Integer, MyObject> list = new HashMap<Integer, MyObject>();
    list.put(1, obj);
    // OR
    list.put(2, new MyObject("aaaaaaaa", "bbbbbbb", "ccccccc"));

    // And retrieve your item with
    MyObject my = list.get(2);
//创建MyObject的实例
MyObject obj=新的MyObject(“asdad”、“fcsfc”、“fdsf”);
//初始化一个包含所有实例的列表
HashMap list=新建HashMap();
列表。put(1,obj);
//或
列表.付诸表决(2,新的MyObject(“AAAAAAA”、“bbbbbbb”、“CCCCC”);
//并使用
MyObject my=list.get(2);
最后,您将能够执行以下操作:

    if (condition)
    {
        for (Map.Entry<Integer, MyObject> entry : list.entrySet())
        {
            MyObject currentObject = entry.getValue();
            msg += "Euro:" + currentObject.euro + "," + currentObject.cent + "   " + "Motivazione:"
                    + currentObject.motivazione + "\n";
        }
    }
sh.putExtra(Intent.EXTRA_TEXT, msg);
if(条件)
{
对于(Map.Entry:list.entrySet())
{
MyObject currentObject=entry.getValue();
msg+=“Euro:”+currentObject.Euro+“,“+currentObject.cent+”+“+”Motivazione:”
+currentObject.motivazione+“\n”;
}
}
sh.putExtra(Intent.EXTRA_TEXT,msg);

您可能希望这样做:

  • 首先声明变量(在括号外,以便在其后可访问)
  • 赋值
  • 使用它们
但是下面的代码是如此重复,你应该避免这样做。 请参见结尾以了解其他选项

String msg1, msg2, msg3, msg4, msg5, msg6, msg7, msg8, msg9;
    if ((euro9 == 0) && (cent9 == 00))
    {
        msg1 = "Euro:" + MailA.this.euro1 + "," + MailA.this.cent1 + "   " + "Motivazione:"
                + MailA.this.motivazione + "\n";
        msg3 = "Euro:" + MailA.this.euro3 + "," + MailA.this.cent3 + "   " + "Motivazione:"
                + MailA.this.motivazione2 + "\n";
        msg4 = "Euro:" + MailA.this.euro4 + "," + MailA.this.cent4 + "   " + "Motivazione:"
                + MailA.this.motivazione4 + "\n";
        msg5 = "Euro:" + MailA.this.euro5 + "," + MailA.this.cent5 + "   " + "Motivazione:"
                + MailA.this.motivazione5 + "\n";
        msg6 = "Euro:" + MailA.this.euro6 + "," + MailA.this.cent6 + "   " + "Motivazione:"
                + MailA.this.motivazione6 + "\n";
        msg7 = "Euro:" + MailA.this.euro7 + "," + MailA.this.cent7 + "   " + "Motivazione:"
                + MailA.this.motivazione7 + "\n";
        msg8 = "Euro:" + MailA.this.euro8 + "," + MailA.this.cent8 + "   " + "Motivazione:"
                + MailA.this.motivazione8 + "\n";
        msg9 = "";

    }

    if ((euro9 != 0) && (cent9 != 00))
    {
        msg1 = "Euro:" + MailA.this.euro1 + "," + MailA.this.cent1 + "   " + "Motivazione:"
                + MailA.this.motivazione + "\n";
        msg3 = "Euro:" + MailA.this.euro3 + "," + MailA.this.cent3 + "   " + "Motivazione:"
                + MailA.this.motivazione2 + "\n";
        msg4 = "Euro:" + MailA.this.euro4 + "," + MailA.this.cent4 + "   " + "Motivazione:"
                + MailA.this.motivazione4 + "\n";
        msg5 = "Euro:" + MailA.this.euro5 + "," + MailA.this.cent5 + "   " + "Motivazione:"
                + MailA.this.motivazione5 + "\n";
        msg6 = "Euro:" + MailA.this.euro6 + "," + MailA.this.cent6 + "   " + "Motivazione:"
                + MailA.this.motivazione6 + "\n";
        msg7 = "Euro:" + MailA.this.euro7 + "," + MailA.this.cent7 + "   " + "Motivazione:"
                + MailA.this.motivazione7 + "\n";
        msg8 = "Euro:" + MailA.this.euro8 + "," + MailA.this.cent8 + "   " + "Motivazione:"
                + MailA.this.motivazione8 + "\n";
        msg9 = "Euro:" + MailA.this.euro9 + "," + MailA.this.cent9 + "   " + "Motivazione:"
                + MailA.this.motivazione9 + "\n";

    }
    sh.putExtra(Intent.EXTRA_TEXT, msg1 + msg3 + msg4 + msg5 + msg6 + msg7 + msg8 + msg9);

我强烈建议您采用以下方法,而不是上述方法。

在单独的文件中创建对象

public class MyObject
{
    public String euro;
    public String cent;
    public String motivazione;

    public MyObject(String euro, String cent, String motivazione)
    {
        this.euro = euro;
        this.cent = cent;
        this.motivazione = motivazione;
    }
}
并使用它

        // Create an instance of MyObject
    MyObject obj = new MyObject("asdad", "fcsfc", "fdsf");

        // Initialize a list that will hold all instances
    HashMap<Integer, MyObject> list = new HashMap<Integer, MyObject>();
    list.put(1, obj);
    // OR
    list.put(2, new MyObject("aaaaaaaa", "bbbbbbb", "ccccccc"));

    // And retrieve your item with
    MyObject my = list.get(2);
//创建MyObject的实例
MyObject obj=新的MyObject(“asdad”、“fcsfc”、“fdsf”);
//初始化一个包含所有实例的列表
HashMap list=新建HashMap();
列表。put(1,obj);
//或
列表.付诸表决(2,新的MyObject(“AAAAAAA”、“bbbbbbb”、“CCCCC”);
//并使用
MyObject my=list.get(2);
最后,您将能够执行以下操作:

    if (condition)
    {
        for (Map.Entry<Integer, MyObject> entry : list.entrySet())
        {
            MyObject currentObject = entry.getValue();
            msg += "Euro:" + currentObject.euro + "," + currentObject.cent + "   " + "Motivazione:"
                    + currentObject.motivazione + "\n";
        }
    }
sh.putExtra(Intent.EXTRA_TEXT, msg);
if(条件)
{
对于(Map.Entry:list.entrySet())
{
MyObject currentObject=entry.getValue();
msg+=“欧元:”+currentObject.Euro+“,“+currentO”