将char值与对象进行比较

时间:2016-07-03 06:26:31

标签: java string

在Java中,pop()函数以对象的形式返回弹出的值。

我使用String方法将对象转换为.toString()。我有一个角色,我将其转换为String。现在我的问题是,如果我比较两个字符串,它们是否相同?

示例:(假设我已经在堆栈中有一些值)

Stack<Character> stack=new Stack<>();
Character c=stack.pop();
//let the returned value is : a
String a=c.toString();
String b=Character.toString('a');

现在我将两个字符串比作:

if(a.equals(b)){System.out.println("same");}

条件是否成立?

1 个答案:

答案 0 :(得分:1)

当然它确实如此,但这既不是一种有效的方法,也不是一种推荐的方法来确定堆栈的顶部是否与给定的字符相同

试试这个

import java.util.Stack;

public class test
{

    public static void main(String[] args)
    {
        Stack<Character> stack=new Stack<>();
        stack.push('a');
        Character c=stack.pop();
        if(c.compareTo('a')==0)
            System.out.println("same");
    }
}

说明:Character java类实现了Comparable接口。因此,您可以直接比较Character类的对象

你可以做一些像这个简单的事情

import java.util.Stack;

    public class test
    {

        public static void main(String[] args)
        {
            Stack<Character> stack=new Stack<>();
            stack.push('a');
            Character c=stack.pop();
            if(c=='a')
                System.out.println("same");
        }
    }

说明:Character对象为un-boxed并转换为原始字符类型

相关问题