Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.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_Split - Fatal编程技术网

Java 我怎样才能把一个字符串拆分成这样。。。?

Java 我怎样才能把一个字符串拆分成这样。。。?,java,split,Java,Split,在我的编程课上,我的老师让我们制作一个以“数字-函数-数字”格式工作的计算器。在编写检查字符串是否有效的方法时,我意识到它会在空格后停止检查字符串。我怎样才能继续检查它?我唯一的想法就是把它分开然后检查,但我不知道怎么做,所以 如何像这样拆分字符串: String s = "2345 * 2341"; 以以下方式: String String1 = 2345; String String2 = 2341; 那么如何检查每个字符串以确保其有效?到目前为止,我有:(注:我是编程初学者) publ

在我的编程课上,我的老师让我们制作一个以“数字-函数-数字”格式工作的计算器。在编写检查字符串是否有效的方法时,我意识到它会在空格后停止检查字符串。我怎样才能继续检查它?我唯一的想法就是把它分开然后检查,但我不知道怎么做,所以

如何像这样拆分字符串:

String s = "2345 * 2341";
以以下方式:

String String1 = 2345;
String String2 = 2341;
那么如何检查每个字符串以确保其有效?到目前为止,我有:(注:我是编程初学者)

public boolean validNumber()引发IOException{
输入=getUserInput();
布尔有效=假;
int i=0;
for(valid=true;i
您可以按如下方式拆分字符串

String string = "1234*4321";
String[] strings = string.split("\\*");
String string1 = strings[0]; 
String string2 = strings[1]; 

可以按如下方式拆分字符串:

String string = "1234*4321";
String[] strings = string.split("\\*");
String string1 = strings[0]; 
String string2 = strings[1]; 

您可以使用
split
方法拆分字符串。要检查拆分的字符串是否有效,请使用
Long.parseLong
方法。如果字符串不是有效数字,它将抛出
NumberFormatException

    String s = "2345 * 23s41";
    String[] strings = s.split("\\*");    //Split strings
    string1 = strings[0].trim();
    string2 = strings[1].trim();
您可以通过以下方法检查有效性:

public boolean isValid(String s)
{
    try
    {
        Long.parseLong(s);
    }
    catch(NumberFormatException e)
    {
        return false;
    }
    return true;
}

您可以使用
split
方法拆分字符串。要检查拆分的字符串是否有效,请使用
Long.parseLong
方法。如果字符串不是有效数字,它将抛出
NumberFormatException

    String s = "2345 * 23s41";
    String[] strings = s.split("\\*");    //Split strings
    string1 = strings[0].trim();
    string2 = strings[1].trim();
您可以通过以下方法检查有效性:

public boolean isValid(String s)
{
    try
    {
        Long.parseLong(s);
    }
    catch(NumberFormatException e)
    {
        return false;
    }
    return true;
}

如果要删除空间,也可以这样做,而不是修剪:

String s = "2345 * 2341";
String[] strings = s.split(" \\* ");

如果要删除空间,也可以这样做,而不是修剪:

String s = "2345 * 2341";
String[] strings = s.split(" \\* ");

如果保证始终具有格式良好的字符串形式
,则可以按以下方式分离不同部分:

String expression = "2345 * 2341";
String[] expressionParts = s.split(" ");

System.out.println(expressionParts[0].equals("2345")); //prints True
System.out.println(expressionParts[1].equals("*")); //prints True
System.out.println(expressionParts[2].equals("2341")); //prints True

如果保证始终具有格式良好的字符串形式
,则可以按以下方式分离不同部分:

String expression = "2345 * 2341";
String[] expressionParts = s.split(" ");

System.out.println(expressionParts[0].equals("2345")); //prints True
System.out.println(expressionParts[1].equals("*")); //prints True
System.out.println(expressionParts[2].equals("2341")); //prints True

下面是一个示例代码:

String String1 = null;
String String2 = null;
String strNumber = "1234*4321";
String delimeter = "\\*";
if(strNumber != null)
{
    String[] parts = strNumber.split(delimeter);
    if(parts.length == 2)
    {
    String1 = parts[0];
    String2 = parts[1];
    }
}

希望有帮助。

下面是一个示例代码:

String String1 = null;
String String2 = null;
String strNumber = "1234*4321";
String delimeter = "\\*";
if(strNumber != null)
{
    String[] parts = strNumber.split(delimeter);
    if(parts.length == 2)
    {
    String1 = parts[0];
    String2 = parts[1];
    }
}

希望有帮助。

input.charAt(i)='0'&&input.charAt(i)='1'
不可能是真的。提示:和!=ORBe比你的老师聪明:使用parboiled及其计算器示例;理解代码;向你的老师解释;工作完成了。我仍然无法理解为什么在2013年要求进行如此愚蠢的练习。谢谢,我将&&改为| |。
input.charAt(I)='0'&&input.charAt(I)='1'
不可能是真的。提示:和!=ORBe比你的老师聪明:使用parboiled及其计算器示例;理解代码;向你的老师解释;工作完成了。我还是不明白为什么2013年会要求做这样愚蠢的练习。谢谢,我把&&改为| |。