首页 > 编程语言 > 详细

Java在利用反射条件下替换英文字母中的值

时间:2014-08-07 15:42:20      阅读:328      评论:0      收藏:0      [点我收藏+]

(1)创建两个Class:

ReflectTest类如下:

package cn.itcast.day01;

import java.lang.reflect.Constructor;
import java.lang.reflect.Field;

public class ReflectTest {

	
	public static void main(String[] args) throws Exception {
		
		changeStringValue(pt1);
		System.out.println(pt1);
	}
			
	private static void changeStringValue(Object obj) throws Exception{
		Field[] fields = obj.getClass().getFields();
		for(Field field :fields){
			//if(field.getType().equals(String.class)){
			if(field.getType() == String.class){  //同一个字节码用等号  而不是用equal
					
				String oldValue = (String) field.get(obj);
				String newValue = oldValue.replace('b','a');
				field.set(obj, newValue);
			}
		}
			
	}
		
}

ReflectPoint类如下:

package cn.itcast.day01;

public class ReflectPoint {

	public String str1 = "ball";
	public String str2 = "basketball";
	public String str3 = "itcast";
	
	public ReflectPoint(int x, int y) {
		super();
		this.x = x;
		this.y = y;
	}

	public String toString(){
		return str1+":"+str2+":"+str3;
		
	}

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

	}

}

结果为:aall:aasketaall:itcast



Java在利用反射条件下替换英文字母中的值,布布扣,bubuko.com

Java在利用反射条件下替换英文字母中的值

原文:http://blog.csdn.net/xlgen157387/article/details/38419687

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!