java如何从List中取值

在下面这个发方法里,生成了两个随机数publicList<String>generatePonits(){List<String>pointList=newArrayLi... 在下面这个发方法里,生成了两个随机数
public List<String> generatePonits() {

List<String> pointList = new ArrayList<String>();
Random random = new Random();
for (; pointList.size() <= this.VERTEX_NUMBER;) {
int x = Math.abs(random.nextInt())%100;
int y = Math.abs(random.nextInt())%100;
String pointStr = "(" + x + "," + y + ")";
if (!pointList.contains(pointStr)) {
pointList.add(pointStr);
}
}
return pointList;
}
我想在另外一个方法里分别提取到在这个方法中生成的两个随机数,应该用什么方法?
谢谢
展开
 我来答
慕课网
2023-07-05 · 聚焦IT资讯干货,让你成为更好的程序员!
慕课网
向TA提问
展开全部
Java中的List是一种非常常用的数据结构,可以存储多个元素,并且允许元素重复。点击学习大厂名师精品课
List的取值方式主要有两种:通过索引取值和通过foreach循环遍历取值。
通过索引取值:List中的元素都有一个对应的索引,可以通过该索引访问该元素。Java中的List索引是从0开始的。因此,要访问第一个元素,索引为0,访问第二个元素,索引为1,以此类推。
在Java中,可以使用get()方法获取List中指定索引位置的元素值。
通过foreach循环遍历取值:Java中的List还提供了foreach循环遍历的方式来访问其元素。foreach循环可以遍历整个List,获取每个元素的值。
慕课网是一个拥有众多在线IT课程的教育平台,通过为用户提供专业的课程和规范的学习方式,帮助其获得职业技能和进一步提高个人竞争力。慕课网提供网页、客户端和移动端多种学习方式,让用户可以随时随地进行学习。学习过程中,还能随时随地跟上教学进度、做练习、查看讲义、交流讨论等。这种学习方式的灵活性和互动性在线下实体学校是难以实现的。如果你正在寻找一个方便、质量好、价格亲民的在线平台,慕课网值得你的关注。
夜幕里的曙光
2023-03-09 · TA获得超过108个赞
知道小有建树答主
回答量:1079
采纳率:27%
帮助的人:54.3万
展开全部
要从一个List中取值,可以使用get()方法来获取指定索引位置的元素。在你提供的代码中,generatePonits()方法返回的是一个String类型的List,包含多个由随机生成的坐标组成的字符串。

如果你想要在另一个方法中分别提取出两个随机数,可以先通过get()方法获取对应索引位置的坐标字符串,然后再将其解析为数字。具体步骤如下:

```java
// 获取generatePonits()方法随机生成的第一个坐标字符串,并将其解析为数字
String point1Str = generatePonits().get(0);
int x1 = Integer.parseInt(point1Str.substring(1, point1Str.indexOf(",")));
int y1 = Integer.parseInt(point1Str.substring(point1Str.indexOf(",") + 1, point1Str.length() - 1));

// 获取generatePonits()方法随机生成的第二个坐标字符串,并将其解析为数字
String point2Str = generatePonits().get(1);
int x2 = Integer.parseInt(point2Str.substring(1, point2Str.indexOf(",")));
int y2 = Integer.parseInt(point2Str.substring(point2Str.indexOf(",") + 1, point2Str.length() - 1));
```

以上代码假设你想要获取generatePonits()方法随机生成的第一个和第二个坐标,并将它们包含的x和y坐标分别解析为整数。这里使用了String类的substring()方法来截取坐标字符串中的x和y坐标部分,并用Integer类的parseInt()方法将它们解析为整数。需要注意的是,由于坐标字符串的格式是"(x,y)",因此在使用substring()方法时需要去掉开头的"("和结尾的")"。

当然,如果你仅仅只是想在generatePonits()方法和另一个方法之间传递生成的随机数,也可以考虑将它们定义为类成员变量,而不是在generatePonits()方法内部声明。这样就可以在不同的方法之间共享这些随机数了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gongkai1985
推荐于2017-10-02 · TA获得超过226个赞
知道小有建树答主
回答量:246
采纳率:100%
帮助的人:167万
展开全部
List<String> lists=new ArrayList<String>();
lists.add("aaa");
lists.add("bbb");
lists.add("ccc");
lists.add("ddd");
for(String list : lists){

System.out.println(list);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
oliverpp
2013-06-30 · TA获得超过988个赞
知道小有建树答主
回答量:686
采纳率:0%
帮助的人:648万
展开全部
如果是在同一个类里:
List<String> pointList = generatePonits();
pointList.get(0); //获取第1个,以此类推
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
华兴兴华
推荐于2017-09-28 · TA获得超过189个赞
知道小有建树答主
回答量:297
采纳率:100%
帮助的人:223万
展开全部
List<String> pointList = generatePonits();

if(pointList != null && pointList.size() == 2)
{
int x = pointList.get(0);
int y = pointList .get(1);
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式