使用某种方法在 java 中的字符串中选择一个随机字符
selecting a random char in a string in java with a certain method
我必须使用此方法(与主要方法分开)从字符串中 select 和 return 1 个随机字符:
public static char selectAChar(String s)
我不确定如何 select 随机变量,也不确定我是否应该使用 for 循环。我尝试过的所有方法都无法将其设置为 return 正确的变量类型。
编辑:这是我目前的编码
public static void main(String args[])
{
Scanner kbd = new Scanner (System.in);
System.out.println("Enter a string: ");
String s = kbd.next();
selectAChar(s);
}
public static char selectAChar(String s)
{
}
我尝试使用这个 for 循环
for(int i = 0; i < s.length(); i++)
但我不知道如何选择一个随机字符和 return 它。
public static char selectAChar(String s){
Random random = new Random();
int index = random.nextInt(s.length());
return s.charAt(index);
}
至少有两种方法可以生成介于 0 和数字(不包括)之间的随机数,一种是调用 Random.nextInt(int)
the Javadoc reads in part returns a pseudorandom, uniformly distributed int
value between 0 (inclusive) and the specified value (exclusive) and String.charAt(int)
Javadoc 说(部分)returns 指定索引处的 char
值.
static Random rand = new Random();
public static char selectAChar(String s) {
return s.charAt(rand.nextInt(s.length()));
}
对于第二种方法,您可以使用 String.toCharArray()
and Math.random()
like
public static char selectAChar(String s) {
return s.toCharArray()[(int) (Math.random() * s.length())];
}
当然,您可以使用(有点疣)toCharArray()[int]
和 charAt(int)
两种方法。
由于您要返回一个值,您的调用者应该保存它
char ch = selectAChar(s);
然后你可以格式化输入 String
并打印随机的 char
like
System.out.printf("'%s' %c%n", s, ch);
我必须使用此方法(与主要方法分开)从字符串中 select 和 return 1 个随机字符:
public static char selectAChar(String s)
我不确定如何 select 随机变量,也不确定我是否应该使用 for 循环。我尝试过的所有方法都无法将其设置为 return 正确的变量类型。
编辑:这是我目前的编码
public static void main(String args[])
{
Scanner kbd = new Scanner (System.in);
System.out.println("Enter a string: ");
String s = kbd.next();
selectAChar(s);
}
public static char selectAChar(String s)
{
}
我尝试使用这个 for 循环 for(int i = 0; i < s.length(); i++) 但我不知道如何选择一个随机字符和 return 它。
public static char selectAChar(String s){
Random random = new Random();
int index = random.nextInt(s.length());
return s.charAt(index);
}
至少有两种方法可以生成介于 0 和数字(不包括)之间的随机数,一种是调用 Random.nextInt(int)
the Javadoc reads in part returns a pseudorandom, uniformly distributed int
value between 0 (inclusive) and the specified value (exclusive) and String.charAt(int)
Javadoc 说(部分)returns 指定索引处的 char
值.
static Random rand = new Random();
public static char selectAChar(String s) {
return s.charAt(rand.nextInt(s.length()));
}
对于第二种方法,您可以使用 String.toCharArray()
and Math.random()
like
public static char selectAChar(String s) {
return s.toCharArray()[(int) (Math.random() * s.length())];
}
当然,您可以使用(有点疣)toCharArray()[int]
和 charAt(int)
两种方法。
由于您要返回一个值,您的调用者应该保存它
char ch = selectAChar(s);
然后你可以格式化输入 String
并打印随机的 char
like
System.out.printf("'%s' %c%n", s, ch);