我正在尝试找到一种从键盘输入 char
的方法。
我尝试使用:
Scanner reader = new Scanner(System.in);
char c = reader.nextChar();
这个方法不存在。
我尝试将c
作为String
。然而,在每种情况下它并不总是起作用,因为我从我的方法中调用的另一个方法需要一个char
作为输入。因此,我必须找到一种明确地以字符形式作为输入的方法。
有什么帮助吗?
我正在尝试找到一种从键盘输入 char
的方法。
我尝试使用:
Scanner reader = new Scanner(System.in);
char c = reader.nextChar();
这个方法不存在。
我尝试将c
作为String
。然而,在每种情况下它并不总是起作用,因为我从我的方法中调用的另一个方法需要一个char
作为输入。因此,我必须找到一种明确地以字符形式作为输入的方法。
有什么帮助吗?
只需使用...
Scanner keyboard = new Scanner(System.in);
char c = keyboard.next().charAt(0);
这会获取下一个输入的第一个字符。
Scanner sc= new Scanner(System.in);
char a=(char) sc.next();
通过函数 'next()',您将以字符串形式获取输入,但由于括号中提到了 'char',它将被转换为字符。
通过在括号中指定目标数据类型来实现数据类型转换的这种方法称为类型转换。它适用于我,希望对您也有用 :)
package stringmethodindexof;
import java.util.Scanner;
import javax.swing.JOptionPane;
/**
*
* @author ASUS//VERY VERY IMPORTANT
*/
public class StringMethodIndexOf {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
String email;
String any;
//char any;
//any=JOptionPane.showInputDialog(null,"Enter any character or string to find out its INDEX NUMBER").charAt(0);
//THE AVOBE LINE IS FOR CHARACTER INPUT LOL
//System.out.println("Enter any character or string to find out its INDEX NUMBER");
//Scanner r=new Scanner(System.in);
// any=r.nextChar();
email = JOptionPane.showInputDialog(null,"Enter any string or anything you want:");
any=JOptionPane.showInputDialog(null,"Enter any character or string to find out its INDEX NUMBER");
int result;
result=email.indexOf(any);
JOptionPane.showMessageDialog(null, result);
}
}
最简单的方法是,首先将变量更改为字符串,并将输入作为字符串接受。然后,您可以根据输入变量使用if-else或switch语句进行控制,如下所示。
Scanner reader = new Scanner(System.in);
String c = reader.nextLine();
switch (c) {
case "a":
<your code here>
break;
case "b":
<your code here>
break;
default:
<your code here>
}
String
强制转换为char
。 - Stephen C