相关疑难解决方法(0)

如何比较Java中的字符串?

==到目前为止,我一直在我的程序中使用运算符来比较我的所有字符串.但是,我遇到了一个错误,将其中一个更改为了.equals(),并修复了该错误.

==坏?什么时候应该不应该使用它?有什么不同?

java string equality

726
推荐指数
23
解决办法
376万
查看次数

两个字符串的比较在android中不起作用

这是我的代码,Eclipse没有显示任何错误,程序工作正常,但它根本不能完全按照我的意愿:)

    View image_view_danger_rate = (ImageView) findViewById(R.id.origin);
    View image_view_origin = (ImageView) findViewById(R.id.danger_rate);

    String entry_tag = (String) descriptionResultView.findViewById(resID).getTag();

    String dangerous = "dangerous";
    String not_dangerous = "not_dangerous";

    if ( entry_tag == dangerous) {
        image_view_danger_rate.setBackgroundResource(R.drawable.attention);
    }else if ( entry_tag == not_dangerous) {
        image_view_danger_rate.setBackgroundResource(R.drawable.its_ok);
        image_view_origin.setBackgroundResource(R.drawable.artificial);
    }
Run Code Online (Sandbox Code Playgroud)

应用程序应在屏幕上弹出两个图像,具体取决于存储在xml文件中的标记.因此,如果标签显示"危险",那么应该显示"注意" - 图像.如果标签显示"not_dangerous",则应该有"its_ok"-image.

现在,在没有if-comparison的情况下显示图像非常有效.

如果我将标签打印为字符串,它可以正常打印,它会正确打印"危险"或"非危险",具体取决于标签.

但如果有如上所示的if-comparison,则没有任何反应,也没有显示图像.

请任何人帮忙!! =)

java string android

17
推荐指数
3
解决办法
5万
查看次数

检查变量是否等于字符串

可能重复:
如何比较Java中的字符串?
Java字符串比较?

import java.util.*;

public class whatever
{

    public static void main(String[] args)
    {

        Scanner test = new Scanner(System.in);
        System.out.println("Input: ");
        String name = test.nextLine();

        if (name == "Win")
        {
            System.out.println("Working!");
        }

        else
        {
            System.out.println("Something is wrong...");
        }

        System.out.println("Value is: " + name);

    }

}
Run Code Online (Sandbox Code Playgroud)

上面的代码非常明显.我假设==只能用于数字?我想要"工作!" 打印.

java string equals

4
推荐指数
2
解决办法
3万
查看次数

Java扫描程序类

我正在编写一个应该关闭控制台的程序,如果用户输入字符串"end".程序总是执行else循环,即使用户输入"end".我想知道为什么程序没有进入if部分循环和关闭.

Scanner scan = new Scanner(System.in);
 while(true)
 {
  String num = scan.nextLine();

  if(num == "end")
  {
   System.exit(0);
  }
  else
  {
   System.out.println("hi");
  }
 }
Run Code Online (Sandbox Code Playgroud)

java

3
推荐指数
2
解决办法
274
查看次数

字符串比较中奇怪的Java行为

可能重复:
Java字符串比较?

我遇到了以下问题,我有一个名为" lang " 的对象,是一个输出字符串的方法LanguageDetector.detect()的结果.

lang = LanguageDetector.detect();
Run Code Online (Sandbox Code Playgroud)

所以我想检查语言是否是英语,所以我正在检查,

lang == "en"
Run Code Online (Sandbox Code Playgroud)

以下屏幕是我的调试屏幕,我的lang显示"en",但是我的lang =="en"显示为false而lang.toString()=="en"为false,是否有人遇到以下问题并且有一个可能的方案?

奇怪的java问题

java string

3
推荐指数
3
解决办法
779
查看次数

("kg"=="kg")返回false.我怎么告诉java,这个比较返回true?

可能重复:
Java字符串比较?

我试图这样做:

boolean exit = false;
while(exit==false && convStoreIndex<convStoreLength) {
  if(conversionStore[convStoreIndex].getInUnit()==inUnit) {
    indexCount++;
    exit=true;
  }
  convStoreIndex++;
}
Run Code Online (Sandbox Code Playgroud)

但if-condition永远不会成功,即使两个字符串相同(在调试器中检查过).所以我添加了几行:

boolean exit = false;
while(exit==false && convStoreIndex<convStoreLength) {
  Log.v("conversionStore["+String.valueOf(convStoreIndex)+"]", conversionStore[convStoreIndex].getInUnit()+"|"+inUnit);
  String cs = conversionStore[convStoreIndex].getInUnit();
  String iu = inUnit;
  Log.v("cs", cs);
  Log.v("iu", iu);
  Log.v("Ergebnis(cs==iu)", String.valueOf(cs==iu));
  if(conversionStore[convStoreIndex].getInUnit()==inUnit) {
    indexCount++;
    exit=true;
  }
  convStoreIndex++;
}
Run Code Online (Sandbox Code Playgroud)

这是LogCat的摘录:

09-15 11:07:14.525: VERBOSE/cs(585): kg
09-15 11:07:16.148: VERBOSE/iu(585): kg
09-15 11:07:17.687: VERBOSE/Ergebnis(cs==iu)(585): false
Run Code Online (Sandbox Code Playgroud)

转换类存储:

class ConversionStore {
  private String inUnit;
  [...]
  public String getInUnit() {
    return inUnit;
  }
}
Run Code Online (Sandbox Code Playgroud)

谁会变得疯狂,java还是我?

java android

2
推荐指数
2
解决办法
454
查看次数

Java中的字符串比较

我正在使用JSP中的Java代码,我正在尝试比较字符串,我遇到了问题.

我宣布了两个字符串

s1 = "din";
s2 = "din";
Run Code Online (Sandbox Code Playgroud)

但是,if (s1 == s2)永远不会执行.有人能帮我吗?

java string

1
推荐指数
3
解决办法
1011
查看次数

if()不起作用

这是我的代码:

Log.d("inf", loader);
if (loader == "Klasse"){
    Log.d("inf", "Klasse yes");
    OPTS = new String[] { //Something };
} else {
    Log.d("inf", "Klasse no");
    OPTS = new String[] { //Something };
}
Run Code Online (Sandbox Code Playgroud)

在第一行中,输出正好是"Klasse",但下一个输出是每次"Klasse no".加载器String设置如下:

String loader = "";
Bundle exta = getIntent().getExtras();
    if(exta !=null) {
        try {
            json = new JSONObject(exta.getString("json"));
            loader = exta.getString("order");
        } catch (JSONException e) {
            e.printStackTrace();
        }
    }
Run Code Online (Sandbox Code Playgroud)

你们有什么想法错了吗?

java android

1
推荐指数
1
解决办法
136
查看次数

Java:if/else语句没有执行,布尔逻辑变量可能出现问题?

可能重复:
Java字符串比较?

我对Java很新,并对我的if/else语句无法执行的原因有疑问.该方法的目标是基于从文本文件读入的符号加载2D阵列.符号将转换为数字以填充数组.据我所知,用于确定if或if/else语句是否应该执行的布尔逻辑是合理的,但它们都没有.谢谢您的帮助.

码:

public void loadText(Scanner sc) { 

   for (int row = 1; row <= grid.length; row++) {

       for (int col = 1; col <= grid[row].length; col++) {

           String x = sc.next();

           if ((x  == " ") && (row <= 10)) {
              grid[row][col] = 0;
           } else if ((x == "*") && (row <= 10)) {
               grid[row][col] = 1;         
           } else if ((x == "$") && (row <= 10)) {
               Arrays.fill(grid[row], 0);
           } else if (row >= 11) { …
Run Code Online (Sandbox Code Playgroud)

java arrays if-statement

0
推荐指数
3
解决办法
1461
查看次数

Java如何将String与布尔值连接?

我不理解下面的输出:

System.out.println(s1.equals(s2)+"a");  ->truea

System.out.println(s1==s2+"a");         ->false
Run Code Online (Sandbox Code Playgroud)

其中s1和s2被声明为相同的字符串"abc"即 String s1="abc"; String s2="abc";

java

0
推荐指数
1
解决办法
73
查看次数

如果使用==的语句给出了意外的结果

private void refineWords() {
    for(String word : words){
        Log.i("word", word);
        if (word == "s" || word == "t" || word == "am" || word == "is" || word == "are" || word == "was" || word == "were" || word == "has" || 
            word == "have" || word == "been" || word == "will" || word == "be" || word == "would" || word == "should" || word == "shall" || 
            word == "must" || word == "can" || word …
Run Code Online (Sandbox Code Playgroud)

java methods

-1
推荐指数
2
解决办法
708
查看次数

标签 统计

java ×11

string ×5

android ×3

arrays ×1

equality ×1

equals ×1

if-statement ×1

methods ×1