Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/356.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_Android_String - Fatal编程技术网

Java 检查字符串是否为空';行不通

Java 检查字符串是否为空';行不通,java,android,string,Java,Android,String,在我的android应用程序中,我有两个活动: 球员名单 游戏发布 在第一个活动中,我询问玩家的名字,如果所有名字都是空的,我们就玩没有名字的游戏,但是如果不是空的,我们就玩玩家 当我添加4名玩家中的3名时,我的活动带有玩家。但是他添加了为空的玩家 如何制作检查系统 球员名单: Intent i = new Intent(getApplicationContext(),Game_Launch.class); i.putExtra("player1", player1

在我的android应用程序中,我有两个
活动

  • 球员名单

  • 游戏发布

在第一个
活动
中,我询问
玩家的名字
,如果所有名字都是空的,我们就玩没有名字的游戏,但是如果不是空的,我们就玩
玩家

当我添加4名玩家中的3名时,我的
活动
带有
玩家
。但是他添加了
为空的玩家

如何制作
检查系统

球员名单:

Intent i = new Intent(getApplicationContext(),Game_Launch.class);

            i.putExtra("player1", player1.getText().toString());
            i.putExtra("player2", player2.getText().toString());
            i.putExtra("player3", player3.getText().toString());
            i.putExtra("player4", player4.getText().toString());
            startActivity(i);
游戏发布:

Intent in = getIntent();
        String player1= in.getExtras().getString("player1");
        String player2= in.getExtras().getString("player2");
        String player3= in.getExtras().getString("player3");
        String player4= in.getExtras().getString("player4");
        //Log.d();

        if (!player1.equals("")) {
            playerge= new String[] {"player2", "player3", "player4"};
        }
        else if (!player2.equals("")){
            playerge= new String[] {"player1", "player3", "player4"};
        }
        else if (!player3.equals("")){
            playerge= new String[] {"player1", "player2", "player4"};
        }
        else if (!player4.equals("")){
            playerge= new String[] {"player1", "player2", "player3"};
        }
        else if (!player1.equals("") && (!player2.equals(""))){
            playerge= new String[] {"player3", "player4"};
        }
        else if (!player3.equals("") && (!player4.equals(""))){
            playerge= new String[] {"player1", "player2"};
        }
当我用这张支票时,它不起作用。你能帮我解决我的问题吗?多谢各位

编辑:

With answerd i have tried :


Intent in = getIntent();
    String player1 = in.getStringExtra("player1");
    String player2 = in.getStringExtra("player2");
    String player3 = in.getStringExtra("player3");
    String player4 = in.getStringExtra("player4");

    //Log.d();

    if (!player1.equals("")) {
        playerge= new String[] {"player2", "player3", "player4"};
        Toast.makeText(getApplicationContext(), "p1", Toast.LENGTH_SHORT).show();
    }
     else if (!player2.equals("")) {
        playerge= new String[] {"player1", "player3", "player4"};
        Toast.makeText(getApplicationContext(), "p2", Toast.LENGTH_SHORT).show();
    }
    else if (!player3.equals("")) {
        playerge= new String[] {"player1", "player2", "player4"};
        Toast.makeText(getApplicationContext(), "p3", Toast.LENGTH_SHORT).show();
    }
    else if (!player4.equals("")) {
        playerge= new String[] {"player1", "player3", "player2"};
        Toast.makeText(getApplicationContext(), "p4", Toast.LENGTH_SHORT).show();
    }
        else{
            Toast.makeText(getApplicationContext(), "tout ok", Toast.LENGTH_SHORT).show();
        }
我的字符串1已完成,2未完成,3已完成,4已完成,但我有P1吐司

如何创建字符串:

public void checkuser(){
    EditText player1 = (EditText)findViewById(R.id.editText2);
    EditText player2 = (EditText)findViewById(R.id.editText);
    EditText player3 = (EditText)findViewById(R.id.editText4);
    EditText player4 = (EditText)findViewById(R.id.editText3);
    String f = player1.getText().toString();
    String f1 = player2.getText().toString();
    String f2 = player3.getText().toString();
    String f3 = player4.getText().toString();

    if ((f.trim().equals("")) && (f1.trim().equals("")) && (f2.trim().equals("") && (f3.trim().equals("")))){
        Intent i = new Intent(getApplicationContext(),Game_Launch_withoutplayer.class);
        startActivity(i);
    }
    else{
        Intent in = new Intent(getApplicationContext(),Game_Launch.class);

        in.putExtra("player1", player1.getText().toString());
        in.putExtra("player2", player2.getText().toString());
        in.putExtra("player3", player3.getText().toString());
        in.putExtra("player4", player4.getText().toString());
        startActivity(in);
    }
}

您获取的数据不正确。当您写入以下数据时:

Intent i = new Intent(getApplicationContext(), Game_Launch.class);
i.putExtra("player1", player1.getText().toString());
你可以这样理解:

Intent in = getIntent();
String player1= in.getStringExtra("player1");
现在您可以按原样进行比较了。

希望这有帮助

if(player1.equalsIgnoreCase("") && (!TextUtil.isempty(player1)) )
并获得如下数据:

Intent in = getIntent();
String player1= in.getStringExtra("player1");

好的,谢谢,关于“android.content.Intent”中的“getStringExtra(java.lang.String)”,我还有一个问题不能应用于“(java.lang.String,java.lang.String)”
。我会尽力解决的。非常感谢你的邀请answerd@johnsnow85是的,这是我的错…我不正确..只需从.getStringExtra(“player1”),中的
中删除第二个参数(
@johnsnow85
in.getStringExtra(“player1”)
返回
null
如果在一些尝试后没有找到字符串,那么也不起作用。。。我已经编辑了第一篇文章,你可以在这里解释你想要实现的逻辑。就像player1为空时应该发生什么一样,etcI有4
edittext
。当我点击我的
按钮时,我检查我的
编辑文本是否为
空。如果
为空
我们将不命名播放;否则我们将使用
播放器
。但是如果玩家已经完成了
player1
player2
player3
而没有
player4
我想从我的字符串中删除player4。那么一次只能有一个玩家的名字出现空?(因为您使用的是
if-else
,这就是我询问的原因)如果
player1
不是
empty
,我会发送
player1
player2
player3
player4
。它在第二个
活动中
我检查谁
为空
,以便从我的
字符串中删除它。这就是为什么我在第二个活动中使用
if-else
。因此,这里:
if(!player1.equals(“”){playerge=newstring[]{“player2”、“player3”、“player4”};…}
。。。您是否应该检查
player1
是否为空(因为您正在删除它)…条件是否应该为:
if(player1.equals(“”){…}