如何将所需的序列(' admin')传递给contains方法?
class containstest
{
public static void main( String [] args)
{
System.out.println("Enter string");
Scanner S = new Scanner (System.in);
String s = S.next();
char A = 'admin' ;
boolean flag;
flag = s.contains(CharSequence A);
if (flag == true)
{
System.out.println("Admin mode");
}
else
{
system.out.println("customermode");
}
}
}
答案 0 :(得分:1)
char
类型表示1个字符。因此,行char A = 'admin' ;
不正确。如果你想使用字符串文字,你必须写
String a = "admin";
请注意:
String
- 是变量的类型。请注意,在Java中,我们从小写字母开始变量名称。这不是强制性的,只是惯例,而是一个众所周知的惯例。
答案 1 :(得分:1)
您的代码存在问题
char A = 'admin' ;
你不能声明这样的字符。 admin
中有多个字符,因此您需要使用字符数组或字符串来存储admin
。
char[] a = {'a', 'd', 'm', 'i', 'n'};
我认为您不需要在问题中使用字符数组,但是您需要使用String
。
String a = "admin";
声明字符串后,您可以调用contains方法,如:
flag = s.contains(a);
请注意,java中的char是用
' '
编写的,而String是用" "
编写的。
Java文档字符串: https://docs.oracle.com/javase/7/docs/api/java/lang/String.html
答案 2 :(得分:0)
它应该s.contains("admin")
。
"管理" (不是' admin')是String
,而不是字符,因此您无法指定' admin'对于char变量,您不能对多个字符使用单引号。
答案 3 :(得分:0)
当您调用s.contains(Char A)
时,您在调用方法时声明一个新变量,而不是输入char A的值。
正确的应该是:
s.contains("string sequence here")
但是,对于您的代码,您应该考虑将char A
更改为String A
。