Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/327.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.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_Charsequence - Fatal编程技术网

Java 组合两个字符序列变量

Java 组合两个字符序列变量,java,android,charsequence,Java,Android,Charsequence,我可以像这样组合两个CharSequence变量吗 if (status == 1) { for (int i = 0; i < get.length(); i++) { if (get.charAt(i) == ')') { } else { temp = temp.toString() + get.charAt(i); // temp and get are charSequence VA

我可以像这样组合两个
CharSequence
变量吗

if (status == 1) {
    for (int i = 0; i < get.length(); i++) {
        if (get.charAt(i) == ')') {
        } else {
            temp = temp.toString() + get.charAt(i);     
            // temp and get are charSequence VARIABLES
        }
    }
}         
if(状态==1){
for(int i=0;i
语法看起来不错,因为编译器没有错误,但应用程序正在崩溃

另外,我不想在这个初学者阶段进入
列表
数组列表
项目。知道我做错了什么吗


另外,如果你说我不应该使用
.toString()
方法,那么我明白了,但是我应该怎么做才能使它正确呢?

首先,你可以考虑一下重构代码:

if (status == 1) {
    for (int i = 0; i < get.length(); i++) {
        if (!(get.charAt(i) == ')')) {
            temp += get.charAt(i);
        }                
    }
}

是的,很好,但是你的主要目标是什么


一般来说,我们使用
String
,因为它有多种方法。此外,您可以使用
StringBuffer
,但首先应该是主要目标。

您确定
get
不为空吗

我试过你的代码,它运行正常

调试并提供应用程序正在崩溃的值

您可以通过以下方式获得相同的结果:

temp = temp.toString() + get.toString().replaceAll("\\)", "");

因为
toString()
您正在进行字符串连接。你的应用程序崩溃的原因是什么?正在制作计算器,这就是为什么在if statemnet中排除关闭paranthesis…它只是崩溃了。。。。强制关闭使用logcat找出原因。我认为线程以未捕获异常退出。。。我在这里访问的是越界吗?主要目标是制作一个像卡西欧一样的计算器:)。用户将输入一个代数表达式,我需要得到它的答案。。。所以表达式是字符格式的。。。此时此刻,我正试图首先解决括号。。。这就是为什么我需要打破这个表达式来解决它…我肯定得到的yp不是空的。。。但是你的代码看起来很有趣。。。让我试试。关于
temp
变量,它可以是
null
?嗯。实际上,当我遇到一个大括号时,我想在if语句中解决它。。所以我不想在一行中转换整个“GetCharSequence变量”。。。。我需要通读所有字符,并在收到字符时作出响应。@Muneeb您正在调用
.toString()
方法,它将抛出
NullPointerException
导致您的应用程序崩溃,好吧。。。。我可以像charSequence temp=“”)那样启动temp cahrSequence变量吗;现在将为空吗?如果它仍然存在,那么我如何启动它,使它在循环的第一次迭代中不再重要?因为你们所建议的这个问题只会在循环的第一次迭代中出现。。。。
temp = temp.toString() + get.toString().replaceAll("\\)", "");