我是Java的新手,我一直试图将术语(字母和数字)的Array列表转换为String(除非它为1
,在这种情况下程序应忽略该元素)。
这是完成此任务的正确方法,还是应该使用其他方法?
我的代码如下:
public String display() {
for (int i = 0; i < terms.size(); i++) {
char p = terms.get(i);
if(Character.isDigit(p = 1)) {
continue;
} else if (Character.isDigit(p)) {
return String.valueOf(p);
} else {
return Character.toString(p);
}
}
p = display();
return display();
}
注意:我知道这是错误的-我只需要有人指出正确的方向即可。
输入示例:{Term('C',1),Term('O',2)}将给出“ CO2”
假设您的字词是某些自定义类,如下所示(基于您提到的示例输入):
public class Term{
private String element;
private int number;
public String getElement(){
return element;
}
public void setElement(char element){
this.element = element;
}
public int getNumber(){
return number;
}
public void setNumber(int number){
this.number = number;
}
}
您的串联方法可以是这样的:
public String display() {
StringBuilder sb = new StringBuilder(50);
for (int i = 0; i < terms.size(); i++) {
Term p = terms.get(i);
sb.append(p.getElement());
if(p.getNumber()!=1) {
sb.append(p.getNumber());
}
}
return sb.toString();
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句