java 实例相同的对象吗_java – 实例变量在每个对象初始化中是相同的

我正在制作一个遗传算法来处理将一系列字符演变成“Hello World”.问题是每当我初始化一个Chromosome对象并调用generateChromosome方法时,“test”群体的所有染色体都保持不变?

public class Chromosome{

private static int defaultLength = 11;

private static char []genes = new char[defaultLength];

//Generates a random char chromosome

public void generateChromosome(){

char []newGene = new char[defaultLength];

for(int x = 0; x

char gene = (char)(32+Math.round(96*Math.random()));

newGene[x] = gene;

}

genes = newGene;

}

//Returns a specific gene in the chromosome

public char getGene(int index){

return genes[index];

}

public char[] getChromosome(){

return genes;

}

public void setGene(char value, int index){

genes[index] = value;

}

public static void setDefaultLength(int amount){

defaultLength = amount;

}

public static int getDefaultLength(){

return defaultLength;

}

public int size(){

return genes.length;

}

@Override

public String toString(){

String geneString = "";

for(int x= 0; x

geneString += genes[x];

}

return geneString;

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值