如何循环获取对象名称?求教!

雷鸣的游戏人生 2012-08-16 10:35:37
public class teetet {

public static void main(String[] args){
String s1 = "123";
String s2 = "321";
String s3 = "asd";

for(int i = 1;i<4;i++)
{
System.out.println("s"+i);
}

}

}

我其实就是想实现循环打印出那三个字符串的目的,怎么办呢?如何得到那三个对象的名称呢!??
...全文
225 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
shuanghanyandan 2012-08-16
  • 打赏
  • 举报
回复

public class teetet {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub

String[] s={"123","321","asd"};

for(int i = 0;i<s.length;i++)
{
System.out.println(s[i]);
}
}
}
可以用用String类型的数组赋值啊,或者用集合
qq2511296 2012-08-16
  • 打赏
  • 举报
回复
LZ的写法适合javascript! 哈哈
scbb 2012-08-16
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]

Java code

for(String s:Arrays.asList("123","234","dfg")){
System.out.println(s);
}



如果你只想通过对象名称后面加上一个i来打印,那么只有通过反射来实现了
[/Quote]

你反射个局部变量给LZ看看? 嘿嘿。
BadPattern 2012-08-16
  • 打赏
  • 举报
回复

for(String s:Arrays.asList("123","234","dfg")){
System.out.println(s);
}


如果你只想通过对象名称后面加上一个i来打印,那么只有通过反射来实现了
jason_deng 2012-08-16
  • 打赏
  • 举报
回复
import java.util.ArrayList;
import java.util.List;

public class teetet {

public static void main(String[] args){
String s1 = "123";
String s2 = "321";
String s3 = "asd";

List<String> result = new ArrayList<String>();

result.add(s1);
result.add(s2);
result.add(s3);

for (int i = 0; i < 3; i++) {
System.out.println(result.get(i));
}
}

}
scbb 2012-08-16
  • 打赏
  • 举报
回复
Java不是动态语言,所以只能。。。

public static void main(String[] args) {
String s1 = "123";
String s2 = "321";
String s3 = "asd";

Map<String, Object> valMap = new HashMap<String, Object>();
valMap.put("s1", s1);
valMap.put("s2", s2);
valMap.put("s3", s3);

for (int i = 1; i < 4; i++) {
System.out.println(valMap.get("s" + i));
}
}
jason_deng 2012-08-16
  • 打赏
  • 举报
回复
import java.util.ArrayList;
import java.util.List;

public class teetet {

public static void main(String[] args){
String s1 = "123";
String s2 = "321";
String s3 = "asd";

for(int i = 1;i<4;i++)
{
System.out.println("s"+i);
}

}

}
cc不会飞 2012-08-16
  • 打赏
  • 举报
回复
你得把三个字符串加到集合或者数组里面才能循环打印
package text4;

import java.util.ArrayList;
import java.util.List;

public class Demo1 {
public static void main(String args[]){
List<String> list = new ArrayList<String>();
list.add("123");
list.add("234");
list.add("dfg");
for(String s:list){
System.out.println(s);
}
}
}
  • 打赏
  • 举报
回复
最后还是想到了解决方法,就是要么集合要么数组就OK了,反射什么的还是麻烦了一点!谢谢各位!
找工作中 2012-08-16
  • 打赏
  • 举报
回复
钻下牛角尖


public class TestGainField {
public static String s1 = "123";
public static String s2 = "321";
public static String s3 = "asd";
public static void main(String[] args) throws NoSuchFieldException, IllegalAccessException{
for(int i = 1;i<4;i++)
{
System.out.println(TestGainField.class.getField("s"+i).get(null));
}
}
}
dddsfdfgfdgfdg 2012-08-16
  • 打赏
  • 举报
回复
用反射应该可以得到
找工作中 2012-08-16
  • 打赏
  • 举报
回复
java 没有eval的

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧