【问题标题】:How to choose a random element of a Java array if the length of the array is unknown如果数组长度未知,如何选择Java数组的随机元素
【发布时间】:2015-01-23 20:58:19
【问题描述】:

我有一个 cookie 数组:

Cookie[] ncs = request.getCookies();

它们的名称类似于“n1”、“n2”...“n40”..“nk”

如何在不考虑“用户名”等其他 cookie 的情况下选择随机 cookie?

【问题讨论】:

  • 遍历所有 cookie,检查它们的名称,只存储 nX 格式的,然后只从商店中挑选一个。如果您保证让所有n1, .., nX cookie 找到X 的最大值并在[1,max] 范围内选择随机值。
  • @Pshemo 您应该将此作为答案发布,并附上一些基本示例,因为这是实现目标的(一种简单的)方法。

标签: java arrays cookies random


【解决方案1】:

您可以使用下面显示的技术来获取随机 cookie。

Cookie[] ncs = request.getCookies();
int randomInt = (int)(Math.random() * ncs.length);
Cookie randomCookie = ncs[randomInt];

【讨论】:

  • 这个答案似乎是错误的,有几个原因:(1)它没有编译,因为ncs是数组,所以它没有size()方法,但是length场地; (2) 它使用所有 cookie,但 @DmitryMahliui 有问题地说“没有考虑其他 cookie,如“用户名”等。”。我不知道为什么 OP 接受了这个答案。
猜你喜欢
  • 1970-01-01
  • 2012-03-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-22
  • 1970-01-01
  • 1970-01-01
  • 2017-09-19
相关资源
最近更新 更多